Linuxでログイン中のユーザー名とユーザが実行中の処理を一覧表示するコマンド「w」
Linuxでログイン中のユーザー一覧を確認したい時、あるいは、ログイン中のユーザがそれぞれどのような処理を実行中であるかを確認したい場合、「w」というアルファベット一文字のコマンドを実行するだけで確認できる。
《同一のユーザー「nobu」を使用して二重ログインしている時にCentOS 5で「w」コマンドを実行した例》
# w
00:21:01 up 92 days, 8:38, 2 users, load average: 0.06, 0.04, 0.02
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
nobu pts/0 192.168.2.6 00:07 0.00s 0.03s 0.01s sshd: nobu [priv]
nobu pts/1 192.168.2.6 00:20 1:50 0.01s 0.00s man w
※同一のユーザー名で二重ログインしていても、それぞれ区別してきちんと確認できる。
《参考:CentOS 5の「man」コマンドで「w」コマンドを確認した時に表示されるマニュアル》
名前
w - ログインしている人とその人がやっていることを表示する
書式
w - [husfV] [user]
説明
w は現在マシンにいるユーザーとその人のプロセスについての情報を表示する。ヘッダには、現在の時刻、システムが稼働している期間、現在ログインしているユーザーの数、過去 1, 5, 15分でのシステムの平均負荷が順に表示される。
以下のエントリがそれぞれのユーザーに対して表示される: ログイン名、端末名、リモートホスト名、ログイン時刻、アイドル時間、 JCPU, PCPU, ユーザー のカレントプロセスのコマンドライン。
JCPU 時間はそのttyから実行されている全プロセスが使った時間である。これには過去のバックグラウンドジョブは含まれないが、現在実行しているバックグラウンドジョブは含まれる。
PCPU 時間は "what" 項目で示されているカレントプロセスが使っている時間である。
オプション
-h ヘッダを表示しない。
-u 現在のプロセス時間と CPU 時間を計算するときに、(ログイン名と現在の) ユーザー名(の違い)を無視する。このオプションについて理解するた め に 、"su" した後、"w" と "w -u" を実行してみるとよい。
-s 短く表示する。ログイン時刻、JCPU, PCPU を表示しない。
-f from (リモートホスト名) 項目を表示するかしないかのトグル。デフォルトでは無効、つまり from 項目は表示されない。しかし、システム管理者やディストリビューションの管理者はデフォルトで from フィールドを表示するようにコンパイルすることもできる。
-V バージョン情報を表示する。
user 指定したユーザーの情報のみ表示する。