命令“su -s”和“sudo -s”之间有什么区别?

Modified on: Fri, 07 Dec 2018 07:20:03 +0800

两个超级用户命令su -ssudo -s之间有什么区别?

它们都为shell提供了对超级用户帐户的访问权限。

作者:slhck,Callum

最佳答案

在实践中,他们都会让你成为超级用户。然而,它们以稍微不同的方式做了稍微不同的事情。

首先,su -将您切换到登录shell,而sudo -s则不会。实际上,这通常意味着您的环境变量不会切换到rootsudo -s。请注意,您只能运行su而不是获取登录shell,或者sudo -i来获取登录shell [并非所有版本]

其次,susu -通过要求您作为新用户进行身份验证来切换到新用户。 sudo -ssudo -i(以及常规的sudo foo)让你运行一个你预先授权的命令[见/etc/sudoers],可能会要求您确认当前 ID。

如果你想要非常可爱,你也可以运行sudo su -,它将请求以root用户身份运行(su -)( sudo部分)。

如果root用户被锁定(例如在Ubuntu上),您将无法使用su以root用户身份登录。在这种情况下,您需要使用sudo -ssudo -i

作者:slhck,Mikeage

相关问答

添加新评论