who/w/logname 在多个终端中损坏

who/w/logname 在多个终端中损坏

我遇到了一个奇怪的问题:在 GUI 会话中,根据所使用的终端,会出现以下两个(相关)问题:

  1. who并且w不列出用户的活动会话
  2. logname返回logname: no login name

它发生在以下终端:

  • 外部终端
  • xfce4-终端
  • 接收

另一方面,在以下场景中它可以完美运行(who/w 列出用户和 logname 功能):

  • ssh 接入
  • xterm / lxterm / uxterm

答案1

检查 lx、xfce 和 rxvt 是否为 setuid root。如果不是,但 xterm 是,请尝试将它们设置为 setuid root ( which rxvt|xargs chmod u+s)。每

rxvt tries to write an entry into the utmp(5) file so that
it can be seen via the who(1) command, and can accept mes­sages.  
To allow this  feature,  rxvt  must  be  installed
setuid root on some systems.

“utmp” 是/var/tmp/utmp,列出当前登录的用户。(描述了一个相关问题,其中 utmp 中的值未正确更新。)

相关内容