who / w / logname quebrado em múltiplos terminais

0

Eu tenho um problema estranho: Em uma sessão da GUI, dependendo do terminal em uso, os dois problemas (relacionados) a seguir aparecem:

  1. who e w não listam a sessão ativa do usuário
  2. logname retorna logname: no login name

Isso acontece nos seguintes terminais:

  • lxterminal
  • xfce4-terminal
  • rxvt

Por outro lado, nos seguintes cenários funciona perfeitamente (quem / w lista as funções user e logname):

  • ssh-ing em
  • xterm / lxterm / uxterm
por hyperknot 21.02.2014 / 17:18

1 resposta

0

Verifique se lx, xfce e rxvt são setuid root. Se eles não são, mas o xterm é, tente defini-los como setuid root ( which rxvt|xargs chmod u+s ). Por este :

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 , que lista usuários conectados no momento. ( Este descreve um problema relacionado no qual os valores em utmp não eram devidamente atualizado.)

    
por 21.02.2014 / 19:22