如何注销`sudo su`?


90

sudo su经常开始mysql做一些功课。

当我完成mysql(或其他任何命令)时,我仍然在sudo

我如何“退出”,所以我迅速的变化从后#$


6
使用退出命令..

11
exit或简单的Ctrl + D。我记得当我第一次发现后者时,我的生活变得简单了十倍:-D。
丹尼尔·安德森

1
除了下面的好答案之外,还有一点:如果您需要在Ubuntu上具有root权限的shell,请键入sudo -i(并用CTRL + D保留)
guntbert

Answers:


110

你并不需要使用sudosutogether-- su切换用户帐户(不带参数它可以切换到根目录)。sudo只是将您的特权提升为当前命令的root用户。

建议您使用sudo而不是(su如果可能的话),但要在致电后返回您的普通帐户su,只需使用以下exit命令


9
sudo su即使您不知道root密码,也将切换到root帐户。
罗布2012年

1
之间的差异sudo susudo并且su,它的值得知道出于安全原因,也为了您的方便这些差异。 johnkpaul.tumblr.com/post/19841381351/su-vs-sudo-su-vs-sudo-ui
Jeff Welling

@Rob,但仍然可能无法以期望的方式设置环境- sudo -i而是使用(在Ubuntu中,默认情况下禁用了root帐户=没有有效的密码)
guntbert

2
@Rob或sudo -s小号地狱。
乔尔·梅隆

这里没有任何建议起作用
Totty.js,2016年

16

采用

su username

回到您的用户级别(或其他用户)

或者只需按Ctrl-D退出根目录


7
您不想进一步了解... Ctrl-D或存在或退出都是不错的选择
Ram 2012年

@Ram-您提出了重要的观点。但是您的评论中有错字。它应该是exit(不存在)。
MountainX

错字确实是@MountainX ... CTRL-D,退出,注销等。– 2013
拉姆

这是唯一有效的答案。
Totty.js,2016年

1
@ Totty.js然后您使用的是su错误的。
Nic Hartley


0

没有任何理由使用sudosu运行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根帐户具有密码,并且您需要使用第二种形式。

除此之外,如果您需要在sudo下运行MySQL(例如,出于文件权限),请按照以下步骤进行操作:

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

您可以省略参数(sudo将默认为root用户,MySQL将默认使用与sudo相同的用户)。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.