मैं sudo मोड में टर्मिनल कैसे चलाऊं?


20

मैं npm को स्थापित करने की कोशिश कर रहा था , और मुझे मिल गया

npm ERR! Error: EACCES, Permission denied '/usr/local/lib/node_modules'
npm ERR! 
npm ERR! Please use 'sudo' or log in as root to run this command.
npm ERR! 
npm ERR!     sudo npm "install" "." "--force" "--global"
npm ERR! 
npm ERR! or set the 'unsafe-perm' config var to true.
npm ERR! 
npm ERR!     npm config set unsafe-perm true

रूट के रूप में कैसे लॉग इन कर सकते हैं?


3
रूट के रूप में लॉगिन न करें। ;-)
क्रिस पेज

जवाबों:


39

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

बेशक npmआप दिशाओं और प्रकार का अनुसरण कर सकते हैं:

sudo -H npm "install" "." "--force" "--global"

यह अभी भी npmकमांड को "रूट" बनाता है और रूट से वापस आने के लिए लॉग आउट चरण को छोड़ देता है।


7
लेकिन रूट के रूप में एक शेल के तहत चलने के बजाय एक कमांड को
सूडो

1
क्या आप बता सकते हैं कि sudo -sइस संदर्भ में क्या है?
केटीके जूल

1
@KatieK कमांड sudo -sरूट के रूप में एक शेल चलाता है। मैन्युअल पृष्ठ इन विवरणों और भी बहुत कुछ है। मैं कुछ शब्द जोड़ूंगा क्योंकि आपका प्रश्न एक अच्छा है और कई अन्य लोग भी आश्चर्यचकित हो सकते हैं कि यह क्या करता है।
bmike

@bmike - यह वही है जो मुझे चाहिए था - धन्यवाद!
केटीके

10

मैं आमतौर पर यह अलग तरीके से करता हूं कि दूसरों ने यहां कैसे वर्णन किया है। आइए कल्पना करें कि आपके पास दो उपयोगकर्ता हैं। मानक उपयोगकर्ता: जॉन व्यवस्थापक उपयोगकर्ता: केविन

यदि जॉन लॉग इन है और यहां रूट उपयोगकर्ता (केविन के रूप में) के रूप में चलना चाहता है तो मैं इसे कैसे करता हूं।

su kevin

जब पूछा गया किविन का पासवर्ड दर्ज करें

sudo npm "install" "." "--force" "--global"

केविन का पासवर्ड फिर से दर्ज करें।


जब आप पहले ही उपयोगकर्ता को केविन में बदल चुके हैं, तो आपको इसकी आवश्यकता क्यों है sudo?
सेमी 2

क्योंकि केविन जड़ नहीं है, उसे सिर्फ जड़ बनने दिया जाता है।
Xvolks

4

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

[william@NCC-1701 ~]$ sudo su
Password:
[root@NCC-1701 /Users/william]$ 

यदि आपने पहले रूट का उपयोग नहीं किया है, तो आपको पूरी तरह से अवगत कराया जाना चाहिए कि रूट के रूप में टाइप किया गया एक गलत चरित्र आपके फोटो, ईमेल और वित्तीय दस्तावेजों सहित आपके पूरे ऑपरेटिंग सिस्टम को हटा देगा। बेहद सावधान रहें और हमेशा ट्राई-पढ़ें कि आप एंट्री मारने से पहले क्या टाइप करते हैं। नहीं तो सौभाग्य!


1
3 साल के लिए एक AIX समर्थन तकनीशियन गया ... 12 साल पहले :) कुछ सामान जानते हैं, लेकिन सरल सामान मेरे सिर से गायब हो गई थी :)
balexandre

मैं मित्रवत मैनुअल और Google सुझावों के साथ अपना उत्तर देने जा रहा था, लेकिन आपके बायो पढ़ने के बाद इसे तुरंत हटा दिया गया। मैक में आपका स्वागत है। मैं AIX के वर्षों के बाद भी अपने आप को vm_stat टाइप करने के लिए नहीं ला सकता। होगा प्यार खोल उपनाम ;-)
bmike

के sudo suबजाय का उपयोग क्यों करें sudo -s?
क्रिस पेज

1
सभी मैं देख रहा हूं एनसीसी -1701 लोल
शेन हू

@ शनेशू अच्छा !! मुझे आपकी टिप्पणी बहुत अच्छी
लगी

2

मैं आयनिक स्थापित करने की कोशिश में एक ही मुद्दा भागा, आपको केवल उसी कमांड को चलाने की जरूरत है sudo:

sudo npm install -g ionic cordova

सिस्टम वर्तमान उपयोगकर्ता के पासवर्ड का अनुरोध करेगा। इसे प्रदान करें, और आप सुपरसुसर के रूप में स्थापित करने में सक्षम होंगे।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.