Linuxサーバーを管理する上で、現在どのユーザーがログインしているのか、またそのユーザーがどのような作業を行っているのかを確認することは、セキュリティ管理やトラブルシューティングにおいて非常に重要です。
そのような情報を簡単に取得できる便利なコマンドが「w
」です。
このコマンドを使えば、ログインしているユーザーの情報だけでなく、稼働時間や実行中のプロセスといった詳細情報までも確認できます。
本記事では、w
コマンドの使い方や表示される項目の意味、実用的な活用方法について詳しく解説します。初心者の方でも分かるよう、丁寧に説明していますのでぜひ参考にしてください。
w
コマンドは、LinuxおよびUNIX系のOSで利用できる、ログイン中のユーザーとそのアクティビティを一覧表示するコマンドです。
以下のような情報を一度に確認できます:
例えば、以下のような出力結果になります。
$ w
11:21:39 up 2:35, 3 users, load average: 0.01, 0.05, 0.08
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
alice pts/0 192.168.1.10 09:00 1:20 0:01 0:00 bash
bob pts/1 - 09:30 0:00 0:02 0:01 vim config.txt
charlie pts/2 192.168.1.15 10:45 0:10 0:03 0:02 top
このように、システムの利用状況をリアルタイムで把握するのに非常に役立つツールです。
構文は非常にシンプルで、基本的にはコマンドをそのまま入力するだけでOKです。
w [オプション] [ユーザー名]
オプションを使わずに実行すると、全ユーザーの情報が表示されます。
特定のユーザーを指定することも可能で、そのユーザーのセッションだけを確認できます。
出力される情報の各列には、それぞれ意味があります。以下に詳しく解説します。
pts/X
は仮想端末、ttyX
は物理端末を意味します。w
コマンドやtop
なども含め、ログインセッション中のCPU使用時間の合計です。このように、単にログインユーザーを確認するだけでなく、何をしているかまで把握できるのがw
の魅力です。
w
コマンドにはいくつかの便利なオプションがあります。代表的なものを紹介します。
-h
w -h
-s
JCPU
やPCPU
を省略)。 bashコピーする編集するw -s
-f
w -f
これらを組み合わせて、自分の目的に応じた表示形式に調整することが可能です。
サーバーの再起動やメンテナンスを行う前に、他のユーザーが作業していないかを確認するのに使えます。
w
ログインユーザーがいなければ安心して作業に入れます。
FROM欄でリモートホストのIPアドレスが分かるので、見慣れないIPからのアクセスがあれば調査のきっかけになります。
load averageが高いときに、どのユーザーが重い処理をしているかをWHAT列で確認し、原因の特定につなげられます。
w
コマンドと似たような情報を表示するコマンドには以下のものがあります。
who
:ログインユーザー情報のみ(簡易版)users
:ログインユーザー名だけを列挙uptime
:システム稼働時間と負荷情報のみtop
やhtop
:プロセスごとの詳細情報それぞれのコマンドには特徴があり、目的に応じて使い分けることが大切です。w
は「誰が」「いつから」「どこから」「何をしているか」という総合的な情報を一発で確認したいときに最適です。
w
コマンドは、Linuxの基本的な管理コマンドの一つとして非常に有用です。
特に、サーバー管理者やシステムエンジニアにとっては、ログイン中のユーザーやその活動状況をすぐに把握できるため、トラブル対応やセキュリティ管理の初動に欠かせない存在です。
ポイントをおさらいすると以下の通りです:
日々の運用やトラブル対応において、w
コマンドを味方につけておくことで、状況把握がスピーディかつ正確に行えます。まだ使ったことがない方は、ぜひ一度試してみてください。