मैं 'sudo su' से कैसे लॉग आउट कर सकता हूं?


82

मैं उपयोग कर रहा हूँ sudo su शुरू करना mysql और इसके साथ कुछ होमवर्क करो।

जब मैं खत्म करता हूं mysql (या कोई अन्य कमांड), तो मैं अभी भी अंदर हूं sudo

मैं "लॉग आउट" कैसे करूं, इसलिए मेरा संकेत वापस से बदल जाता है # सेवा मेरे $?


4
एक्जिट कमांड का प्रयोग करें ।।

10
exit या एक साधारण Ctrl + D। मुझे याद है जब मैंने पहली बार उत्तरार्द्ध की खोज की थी और मेरे जीवन को दस गुना सरल मिला:
Daniel Andersson

1
नीचे अच्छे उत्तरों के अलावा एक बिंदु शेष है: अगर आपको एक शेल की आवश्यकता है जड़ आपके द्वारा टाइप किए गए उबंटू पर अनुमति sudo -i (और इसे CTRL + D के साथ छोड़ दें)
guntbert

जवाबों:


104

आपको उपयोग करने की आवश्यकता नहीं है sudo तथा su साथ में-- su आपके उपयोगकर्ता खाते को स्विच करता है (बिना तर्क के यह आपको रूट करता है) sudo वर्तमान कमांड के लिए रूट करने के लिए अपने विशेषाधिकार बढ़ाएं।

यह उपयोग करने के लिए अनुशंसित है sudo के बजाय su यदि संभव हो, लेकिन कॉल करने के बाद अपने सामान्य खाते पर वापस लौटें su, बस का उपयोग करें exit आदेश


9
sudo su यदि आप रूट पासवर्ड नहीं जानते हैं तो भी रूट खाते पर स्विच करेंगे
Rob

1
क्या आप वहां मौजूद हैं कर रहे हैं बीच के भेद sudo su, sudo तथा su, और यह सुरक्षा कारणों से आपकी सुविधा के लिए भी उन अंतरों को जानने के लायक है johnkpaul.tumblr.com/post/19841381351/su-vs-sudo-su-vs-sudo-u-i
Jeff Welling

@ रोब लेकिन फिर भी यह पर्यावरण को एक वांछित तरीके से सेट नहीं कर सकता है - उपयोग sudo -i इसके बजाय (उबंटू में) जड़ खाता डिफ़ॉल्ट रूप से अक्षम है = कोई वैध पासवर्ड मौजूद नहीं है)
guntbert

2
@ रब या sudo -s के लिये रों नरक।
Joel Mellon

यहाँ कुछ भी नहीं सुझाया गया है
Totty.js

15

उपयोग

su username

अपने उपयोगकर्ता स्तर (या किसी भिन्न उपयोगकर्ता) पर वापस जाने के लिए

या रूट से बाहर निकलने के लिए बस Ctrl-D दबाएं


7
आप अधिक गहराई तक नहीं जाना चाहते ... Ctrl-D या अस्तित्व या लॉगआउट सभी अच्छे विकल्प हैं
Ram

@ राम - आपने एक महत्वपूर्ण बिंदु बनाया। लेकिन आपकी टिप्पणी में एक टाइपो है। यह होना चाहिए exit (मौजूद नहीं)।
MountainX

टाइपो वास्तव में @MountainX ... CTRL-D, बाहर निकलें, लॉगआउट आदि।
Ram

यह एकमात्र उत्तर है जो वास्तव में काम करता है।
Totty.js

@ Totty.js तब आप उपयोग कर रहे हैं su गलत।
Nic Hartley

4
  • logout यदि उपयोग किया जाता है sudo su -
  • exit यदि उपयोग किया जाता है sudo -s

0

उपयोग करने का कोई कारण नहीं है sudo या su MySQL कमांड-लाइन क्लाइंट चलाने के लिए। यह आपके MySQL उपयोगकर्ता के रूप में आपके वर्तमान यूनिक्स उपयोगकर्ता का उपयोग करने में चूक करता है, लेकिन इसके बजाय आपको इसे उस उपयोगकर्ता को पास करना चाहिए जिसे आप तर्क के रूप में जोड़ना चाहते हैं:

$ mysql -u root # connect as MySQL's root user (without password)
$ mysql -u root -p # -p means prompt for a password

उम्मीद है, आपके MySQL रूट खाते में एक पासवर्ड है, और आपको दूसरे फ़ॉर्म का उपयोग करने की आवश्यकता होगी।

इसके अलावा, अगर आपको sudo के तहत MySQL चलाने की आवश्यकता है (जैसे, फ़ाइल अनुमति के लिए) तो इसे इस तरह से करें:

$ sudo -u unix-user mysql -u mysql-user -p

आप तर्कों को छोड़ सकते हैं (sudo उपयोगकर्ता रूट के लिए डिफ़ॉल्ट होगा, MySQL sudo के समान उपयोगकर्ता का उपयोग करने के लिए डिफ़ॉल्ट होगा)।

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