Por que o comando “w” reporta um número errado de usuários logados?

4

Eu fiz o login de tty6, depois terminei a sessão, agora executando o comando "w" de um terminal dentro da unidade, dando a seguinte saída

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

não é o comando para listar apenas os usuários logados? Eu estou usando o Ubuntu 12.10

Editar

Observe que o comando w informa que 3 usuários estão conectados (no cabeçalho), mas mostra apenas 2 entradas.

    
por Hinklo 28.09.2013 / 22:53

1 resposta

5

Não há nada de surpreendente nessa saída w . Se você olhar para a segunda coluna sob o cabeçalho TTY , ele diz que os dois logins são de tty7 (não tty6 !) E pts/2 . Agora tty7 é seu login gráfico (veja a coluna WHAT ) e pts/2 é um dispositivo pseudo-terminal que é o emulador de terminal que você abriu para executar o comando w (novamente, veja a coluna WHAT ).

Atualizar

Parece que o número de usuários relatado incorretamente pode ocorrer às vezes quando o /var/run/utmp , que w faz uso, está corrompido.

A solução que encontrei sugerida na Internet é truncar esse arquivo (talvez no modo de usuário único) e repetir o login:

# >/var/run/utmp
# reboot

Prossiga com cuidado, no entanto, é sugerido que os usuários conectados enquanto você nuke /var/run/utmp experimentará "estranheza", e é por isso que as pessoas recomendam que você faça isso no modo de usuário único.

Fontes

por 28.09.2013 / 23:00

Tags