題 如何退出`sudo su`?


我正在使用 sudo su 開始 mysql 並用它做一些功課。

當我完成 mysql (或任何其他命令),然後我還在 sudo

如何“退出”,以便我的提示更改回來 # 至 $


81
2018-04-05 17:49


起源


使用退出命令..
exit 或者簡單的Ctrl + D.我記得當我第一次發現後者時,我的生活變得簡單了十倍:-D。 - Daniel Andersson
除了下面的好答案,還有一點: 如果 你需要一個shell 根 您鍵入的Ubuntu權限 sudo -i (並用CTRL + D保留) - guntbert


答案:


你不需要使用 sudo 和 su 一起 - su 切換您的用戶帳戶(沒有參數,它會切換到root)。 sudo 只需將您的權限提升為當前命令的root權限即可。

它被推薦使用 sudo 代替 su 如果可能,但在致電後返回正常帳戶 su,只需使用 exit 命令


99
2018-04-05 17:52



sudo su 即使您不知道root密碼,也會切換到root帳戶。 - Rob
那裡 是 之間的差異 sudo su, sudo 和 su,出於安全考慮而且為了您的方便而值得了解這些差異。 johnkpaul.tumblr.com/post/19841381351/su-vs-sudo-su-vs-sudo-u-i - Jeff Welling
@Rob但仍然可能無法以所需的方式設置環境 - 使用 sudo -i 相反(在Ubuntu中 根 默認情況下禁用帳戶=沒有有效密碼) - guntbert
@Rob或 sudo -s 對於 小號地獄。 - Joel Mellon
這裡沒有任何建議有效 - Totty.js


使用

su username

回到用戶級別(或其他用戶)

或者只需按Ctrl-D退出root


14
2018-04-05 17:51



你不想深入... Ctrl-D或存在或註銷都是不錯的選擇 - Ram
@Ram - 你提出了一個重點。但是你的評論中有一個拼寫錯誤。它應該是 exit (不存在)。 - MountainX
錯字確實@MountainX ... CTRL-D,退出,退出等 - Ram
這是唯一真正有效的答案。 - Totty.js
@Totty.js然後你正在使用 su 錯誤。 - Nic Hartley


  • logout 如果使用 sudo su - 
  • exit 如果使用 sudo -s

4
2017-10-16 11:33





沒有任何理由可以使用 sudo 要么 su 運行MySQL命令行客戶端。它默認使用您當前的Unix用戶作為您的MySQL用戶,但您應該將要連接的用戶作為參數傳遞給它:

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

希望您的MySQL root帳戶有密碼,您需要使用第二種形式。

除此之外,如果你需要在sudo下運行MySQL(例如,對於文件權限),那麼這樣做:

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

你可以省略參數(sudo將默認為root用戶,MySQL將默認使用與sudo相同的用戶)。


0
2018-04-05 18:01