Я вошел в систему с 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
Однако будьте осторожны, так как предполагается, что пользователи, вошедшие в систему во время выполнения вами nuke, /var/run/utmp
будут испытывать «странности», поэтому рекомендуется делать это в однопользовательском режиме.
Источники