‘root’用户不存在?

‘root’用户不存在?

当我运行该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

相关内容