为什么“w”或“who”命令没有显示所有登录用户?

我在我们家庭的多个成员共享的笔记本电脑上安装了Ubuntu 11.10。 当我从命令行执行’w’或’who’命令时,即使有三个用户登录,我也只看到我的帐户。

有趣的是,当从机器上的每个不同帐户执行命令时,我得到不同的结果。 当我从孩子的账户执行相同的命令时,我会看到我和孩子的账户被列出。 当我从我妻子的帐户执行时,我会看到所有三个帐户:她的帐户,我的帐户和孩子帐户。

所有三个帐户都是主动登录的,我只是在帐户之间切换并执行相同的命令。 为什么结果不同? 对不起,如果这是简单明了的答案。 我搜索过,找不到任何东西。

不确定是否重要,但我是笔记本电脑上唯一的管理员。

桌面用户通常不会显示who是因为LightDM没有在utmp中记录您的桌面登录(请参阅https://bugs.launchpad.net/lightdm/+bug/871070 )。

我想知道,当你测试这个时,你是否会打开你的终端窗口:

  1. 您打开一个xterm并从您自己的帐户运行who 。 您是唯一拥有终端的用户,因此它只列出您。 其他帐户可能在后台运行会话,但由于LightDM未记录其登录信息,因此未列出这些会话。
  2. 你将xterm打开在你自己的帐户上,切换到孩子的帐户,在那里打开一个xterm,然后运行who 。 您的帐户仍然列出,因为它已连接到您运行的xterm。
  3. 你把那个xterm打开你的孩子的帐户,切换到你妻子的帐户,打开另一个xterm并运行who 。 现在所有三个帐户都有终端打开,所以who列出了所有这些终端。