‘root’用户不存在?

当我运行su命令时,终端返回:

 user 'su' does not exist 

如何添加root用户? 谁能回答这个问题? 我试过sudo adduser su ,但在此之后,我遇到了同样的问题。

你成为sudo su根(作为一个例子)。 或者更好地说:您将管理员用户永久提升为管理员权限,直到退出为止。 例:

 rinzwind@discworld:~$ sudo su [sudo] password for rinzwind: root@discworld:/home/rinzwind# 

并且Ubuntu在技术上没有活跃的root用户。 从Ubuntu RootSudo维基页面:

在Linux(以及一般的Unix)中,有一个名为Root的超级用户。 与Root等效的Windows是Administrators组。 SuperUser可以做任何事情,因此超级用户可能会很危险。 您可以错误地键入命令并销毁系统。 理想情况下,您作为只具有手头任务所需权限的用户运行。 在某些情况下,这必然是Root,但大多数情况下它是普通用户。

默认情况下,Root帐户密码在Ubuntu中被锁定。 这意味着您无法直接以Root身份登录或使用su命令成为Root用户。 但是,由于Root帐户在物理上存在,因此仍可以使用root级别权限运行程序。 这就是sudo的用武之地 – 它允许授权用户(通常是“管理”用户;有关详细信息,请参阅AddUsersHowto)以Root身份运行某些程序,而无需知道root密码。

这意味着在终端中你应该使用sudo来获取需要root权限的命令; 只需将sudo添加到通常作为Root运行的所有命令。 有关更广泛的用法示例,请参阅下文。 同样,当您运行需要root权限的GUI程序(例如网络配置小程序)时,使用图形sudo,系统也会提示您输入密码(详见下文)。 请记住,当sudo要求输入密码时,它需要您的用户密码,而不是Root帐户密码。

sudo -i

这个命令可以让你登陆root shell。

这里有更多解释和其他解决方案的比较

  corrupted by user's HOME=/root uses root's PATH env vars sudo -i YY[2] N sudo -s NY[2] Y sudo bash NY[2] Y sudo su NN[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