为什么“who”命令不会以登录用户身份显示“root”?

当我使用以下命令从gnome-terminal以root身份登录时:

sudo su 

它以root用户身份登录。

这种切换不是用户认为是登录吗?

另外,哪个命令可以显示我所做的所有“切换”?

首先,我们来看看man who

 Print information about users who are currently logged in. 

如你所说,

sudo su它以root用户身份登录

所以,这是关于你的 ,不是关于root的

而你是对的。 这是来自man sudo

 sudo allows a permitted user to execute a command as the superuser or another user, as specified by the security policy. 

所以,再次,当你运行sudo su命令时,实际上你( 不是 root)正在以超级用户身份执行su命令。

如果您想成为root用户,首先必须启用root帐户。 在这里看到如何做到这一点:

  • 如何启用root登录?

在此之后,您可以使用root登录tty1-6,通过ssh,登录屏幕中的GUI等登录。

在Ubuntu中,似乎有一种替代方法可以在不启用其帐户的情况下登录root。 以下命令将执行此操作:

 pkexec env DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY gnome-terminal 

这将打开一个根终端:

根终端

与第二个问题相关,我给你一个提示:在/var/log目录中查找auth.log.*等文件。