Visual Studio Code को रूट के रूप में कैसे चलाएं


40

मैंने हाल ही में विजुअल स्टूडियो कोड संपादक स्थापित किया है। मैंने 32 बिट .deb पैकेज डाउनलोड किया। स्थापित और सामान्य रूप से चलता है, लेकिन जब मैंने अपने प्रोजेक्ट फ़ोल्डर में एक फ़ाइल को सहेजने की कोशिश की, तो यह इनकार की अनुमति देता है। इसलिए, मैं कोड को फिर से चलाता हूं

sudo code .

और यह लौट आता है

It is recommended to start vscode as a normal user.
To run as root, you must specify an alternate user data directory with the --user-data-dir argument.

मैंने --user-data-dirतर्क के साथ एक वैकल्पिक उपयोगकर्ता डेटा निर्देशिका को निर्दिष्ट करने के तरीके के बारे में सोचा लेकिन मुझे बहुत कुछ नहीं मिला।

तो, मैं Ubuntu 16.04 में रूट के रूप में विज़ुअल स्टूडियो कोड कैसे चलाऊं?

संपादित करें: मैं एक समाधान पसंद करूंगा जो निर्देशिका अनुमतियों को बदलने से बचता है।

edit2: परियोजना निर्देशिका: /var/www/project(मैं अपाचे का उपयोग कर रहा हूँ vhost)


6
इसे सहेजने की अनुमति देने के लिए अपने प्रोजेक्ट फ़ोल्डर पर अनुमतियाँ सेट क्यों नहीं करें?
1

2
मुझे समझ नहीं आता कि आप कोड को रूट के रूप में क्यों चलाना चाहते हैं; यह संभावित खतरनाक है। आपको वास्तविक कारणों का पता लगाना चाहिए कि आप फ़ाइल को क्यों नहीं बचा सकते हैं।
edwinksl

1
आपका प्रोजेक्ट फ़ोल्डर कहाँ है
नुवान थारा

1
@ नुवान /var/www/project(vhost के साथ अपाचे का उपयोग करते हुए)
wdarking

जवाबों:


53

वीएसकोड को रूट के रूप में चलाना बहुत खतरनाक है (क्योंकि यह कोई अन्य अनुप्रयोग है), लेकिन क्या आपको इसकी पूरी आवश्यकता है:

बनाम कोड चलाते समय उपयोग करने के लिए आपको उपयोगकर्ता डेटा निर्देशिका को निर्दिष्ट करना होगा:

sudo code --user-data-dir="~/.vscode-root"

फिर खिड़की से आप अपना प्रोजेक्ट फ़ोल्डर खोल सकते हैं

दोबारा: यह अनुशंसित नहीं है। मज़े करो।

अपडेट मई 2018

यह क्यों अनुशंसित नहीं है, यह पूछने के लिए, आपको स्पष्ट रूप से समझ में नहीं आता कि क्यों sudoमौजूद है। से इस AskUbuntu प्रश्न :

यह सुरक्षा मॉडल को पराजित करता है जो वर्षों से जारी है। एप्लिकेशन को गैर-प्रशासनिक सुरक्षा (या मात्र नश्वर के रूप में) के साथ चलाने के लिए है, इसलिए आपको अंतर्निहित सिस्टम को संशोधित करने के लिए उनके विशेषाधिकारों को बढ़ाना होगा। उदाहरण के लिए, आप नहीं चाहेंगे कि रिदमबॉक्स का हालिया क्रैश बग के कारण आपकी संपूर्ण / usr निर्देशिका को मिटा दे। या वह भेद्यता जो अभी हाल ही में PROFTPD में पोस्ट की गई थी ताकि हमलावर को ROOT शेल हासिल करने की अनुमति दी जा सके।

किसी भी ऑपरेटिंग सिस्टम पर उपयोगकर्ता स्तर पर अपने एप्लिकेशन चलाने और रूट उपयोगकर्ता के लिए प्रशासनिक कार्यों को छोड़ने के लिए, और केवल प्रति-आवश्यकता के आधार पर यह अच्छा अभ्यास है।

मैं यह नहीं कह रहा हूं कि आपको कभी भी VSCode को रूट के रूप में उपयोग नहीं करना चाहिए (हालांकि इसके बहुत आसान करने से बचने के लिए) मैं कह रहा हूं कि जब आप ऐसा करना चाहते हैं तो आपको सावधान रहना चाहिए और जोखिमों को जानना चाहिए।

करने के लिए पूर्ण सर्वोत्तम बात यह है कि एक प्रतिबंधित फ़ाइल की एक प्रतिलिपि बनाएं, इसे संपादित करें, और इसे कॉपी करें जब आप पूरी तरह से सुनिश्चित कर लें कि यह समाप्त हो गया है।

उन फ़ाइलों को संपादित करने के लिए जिनके लिए आपके उपयोगकर्ता की अनुमति नहीं है, मैं अब तलहा जुनैद के जवाब की सिफारिश करूंगा, जो हर बार जब आप किसी फ़ाइल को सहेजना चाहते हैं, तो अनुमति मांगते हैं। रूट एक्सेस के लिए संकेत मौजूद नहीं था जब मैंने यह उत्तर लिखा था।


4
वीएसकोड को रूट के रूप में चलाने की अनुशंसा क्यों नहीं की गई है? उदाहरण के लिए मेजबानों में कुछ कैसे बदलें? मुझे आवश्यकता होगी रूट अनुमति नहीं है?
zwitterion

1
धन्यवाद यह काम कर रहा है: अब मेरे पास एक VSCode विंडो रूट के रूप में चल रही है और मैं रूट के रूप में एक और vscode विंडो शुरू करना चाहता हूं, क्या यह संभव है?
22

1
हां यह संभव है, एक और टर्मिनल खोलें।
लुकास DAW

3
@MarcoDufal बिल्कुल नहीं। यह एक भयानक विचार है। विशेष रूप से जब OS फ़ाइलों के साथ काम करते हैं तो आपको 777 की अनुमति बिल्कुल निर्धारित नहीं करनी चाहिए। इसका मतलब है कि सिस्टम पर सब कुछ चाहे या किसी ने भी शुरू किया हो या क्या करने की अनुमति है, फ़ाइलों और फ़ोल्डरों के उस सेट को संशोधित करने की अनुमति है। सबसे अधिक आपको फ़ाइलों को "स्वयं" करना चाहिए ताकि आपको 755 अनुमतियों के करीब कुछ के साथ उन्हें संपादित करने की अनुमति मिल सके।
ज़वाता २३'१

3
@ ज़वाता आप बिलकुल सही हैं! कृपया एक नौसिखिया बहाना। सर उठाने के लिए धन्यवाद!
मार्को डुफाल

14

बस अगर आप चाहते हैं कि मैं एक एकल फ़ाइल में परिवर्तन करूँ तो मैं निम्नलिखित दृष्टिकोण को पसंद करूँगा।

  • नियमित उपयोगकर्ता के रूप में बनाम कोड चलाएं।
  • फ़ाइल में परिवर्तन करें
  • File -> Save या दबाएँ Ctrl + S
  • बनाम-कोड सही नीचे कोने में त्रुटि कहेगी

    'ग्रब' को बचाने में विफल: अपर्याप्त अनुमति। व्यवस्थापक के रूप में पुनः प्रयास करने के लिए 'व्यवस्थापक के रूप में पुनः प्रयास करें' का चयन करें

    यहाँ छवि विवरण दर्ज करें

  • पर क्लिक करें Retry as Admin। यह व्यवस्थापक क्रेडेंशियल्स के लिए पूछेगा

    यहाँ छवि विवरण दर्ज करें

  • क्रेडेंशियल दर्ज करें और बनाम-कोड के साथ बचत फ़ाइलों का आनंद लें।


1
क्या हर एक फाइल के लिए हर बार ऐसा करने का कोई तरीका है? मेरे पास सैकड़ों फाइलें हैं जिन्हें मुझे परिवर्तन करने की आवश्यकता है और वीएस कोड मेरे पासवर्ड के लिए पूछ रहा है। मैं अपना लैपटॉप दीवार के खिलाफ फेंकने के लिए तैयार हूं।
यहोशू केमेर

फिर आप ऊपर दिए गए स्वीकृत उत्तर का पालन कर सकते हैं। askubuntu.com/a/820205/367228
तलहा जुनैद

4

आपको अपने html फोल्डर को अनुमति देनी होगी।

इसे अपने टर्मिनल में आज़माएं।

sudo chmod -R 777 /var/www/html/

कृपया सुनिश्चित करें कि मौजूदा प्रोजेक्ट फ़ाइलों और फ़ोल्डर की अनुमति की जाँच करें।


9
यह अब तक की सबसे बेवकूफ सलाह है ... आपके सिस्टम को संशोधित या नष्ट करने के लिए दुर्भावनापूर्ण प्रक्रियाओं को रोकने के लिए प्रतिबंधित अधिकार हैं। प्रतिबंधित फ़ाइलों की एक कॉपी पर काम करें और फिर जब किया जाए, या उससे भी बेहतर तरीके से कॉपी करें, तो इसे करने के लिए एक इंस्टॉल स्क्रिप्ट बनाएं। आप निर्देशिका और फ़ाइलों के स्वामी भी अपने उपयोगकर्ता को समूह में जोड़ सकते हैं।
सोरेन ए

अपने प्रोजेक्ट फ़ोल्डर में सीडी और sudo chmod -R 777 <project_dir_name> और
चलाएं

1
अपने प्रोजेक्ट फ़ोल्डर में सीडी और sudo chmod -R 777 <project_dir_name> और
चलाएं
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.