当我运行该su
命令时,终端返回:
user 'su' does not exist
如何添加 root 用户?有人能回答这个问题吗?我试过了sudo adduser su
,但之后,我遇到了同样的问题。
答案1
您将通过sudo su
(作为示例) 成为 root 用户。或者更确切地说:您将永久提升您的管理员用户权限,直到您退出。示例:
rinzwind@discworld:~$ sudo su
[sudo] password for rinzwind:
root@discworld:/home/rinzwind#
从技术上讲,Ubuntu 没有活跃的 root 用户。从Ubuntu RootSudo 维基页:
在 Linux(以及一般的 Unix)中,有一个名为 Root 的超级用户。在 Windows 中,与 Root 对应的是管理员组。超级用户可以做任何事情,因此以超级用户的身份进行日常工作可能会很危险。您可能会错误地输入命令并破坏系统。理想情况下,您以仅具有手头任务所需权限的用户身份运行。在某些情况下,这必须是 Root,但大多数情况下是普通用户。
默认情况下,Ubuntu 中的 Root 帐户密码是锁定的。这意味着您无法直接以 Root 身份登录或使用 su 命令成为 Root 用户。但是,由于 Root 帐户物理存在,因此仍然可以以 root 级权限运行程序。这就是 sudo 的作用所在 - 它允许授权用户(通常是“管理员”用户;有关更多信息,请参阅 AddUsersHowto)以 Root 身份运行某些程序,而无需知道 root 密码。
这意味着在终端中,您应该使用 sudo 来执行需要 root 权限的命令;只需将 sudo 添加到您通常以 Root 身份运行的所有命令前面即可。有关更广泛的使用示例,请参见下文。同样,当您运行需要 root 权限的 GUI 程序(例如网络配置小程序)时,请使用图形 sudo,系统也会提示您输入密码(更多信息见下文)。请记住,当 sudo 要求输入密码时,它需要您的用户密码,而不是 Root 帐户密码。
答案2
sudo -i
此命令将让您登陆 root shell。
更多解释和其他解决方案之间的比较这里
corrupted by user's
HOME=/root uses root's PATH env vars
sudo -i Y Y[2] N
sudo -s N Y[2] Y
sudo bash N Y[2] Y
sudo su N N[1] Y
[1] PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
probably set by /etc/environment
[2] PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/X11R6/bin