我从 tty6 登录,然后注销。现在,w
从内部终端执行命令unity
会产生以下输出:
mark@mark-Latitude-D620:~$ w
19:27:19 up 2:40, 3 users, load average: 0.41, 0.61, 0.46
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
mark tty7 16:47 2:39m 5:06 0.22s gnome-session -
mark pts/2 :0.0 19:13 7.00s 0.30s 0.00s w
该命令不是应该只列出登录的用户吗?我使用的是 Ubuntu 12.10。
编辑
请注意,该w
命令报告 3 个用户已登录(在标题中),但仅显示 2 个条目。
答案1
这个输出并没有什么令人惊讶的w
。如果您查看TTY
标题下的第二列,它会显示两个登录名来自tty7
(不是tty6
!) 和pts/2
。现在tty7
是您的图形登录(请参阅WHAT
专栏),并且pts/2
是一个伪终端设备,它是您打开用于运行命令的终端模拟器w
(再次参阅WHAT
专栏)。
更新
/var/run/utmp
当您使用w
的 已损坏时,有时可能会出现错误报告的用户数量。
我在互联网上找到建议的解决方案是截断此文件(可能在单用户模式下)并重试登录:
# >/var/run/utmp
# reboot
不过,请谨慎行事,建议在您使用核武器时登录的用户/var/run/utmp
会遇到“怪异”,这就是为什么人们建议您在单用户模式下执行此操作。
来源