「w」コマンドがログインしているユーザーの数を誤って報告するのはなぜですか?

「w」コマンドがログインしているユーザーの数を誤って報告するのはなぜですか?

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

この出力には驚くべきことはありませんwTTYヘッダーの下の2番目の列を見るとtty7(!ではありませんtty6)、で2つのログインが表示されますpts/2。これでtty7、グラフィカルログイン(WHATボックスを参照)とpts/2コマンドを実行するために開くターミナルエミュレータである疑似ターミナルデバイスwWHATバックボックスを参照)です。

修正する

/var/run/utmp時々壊れたものを使用すると、ユーザーが報告するエラーが発生するw可能性があります。

私がインターネットで見つけた提案された回避策は、このファイルを切り捨てて(おそらくシングルユーザーモードで)ログインを再試行することです。

# >/var/run/utmp
# reboot

しかし注意して進みなさい。ログインしているユーザーは、ヌッキング中に「奇妙」を経験するので、/var/run/utmp人々はシングルユーザーモードでこれを行うことをお勧めします。

源泉

関連情報