topコマンドの使い方

Linuxサーバーの稼働状況については top コマンドで確認します。
topコマンドを使えばCPUやメモリの使用率、プロセスの稼働状況などをリアルタイムで知ることができます。 サーバーが重いなどの症状がある際に原因を特定したり、ボトルネックを見つけるための手掛かりとなります。

topコマンドをオプションなしで実行させた場合、以下のような表示となります。

topコマンド表示
それでは各行の表示について解説していきます。

1行目、top以下について

top - 04:39:31 up 2:09, 2 user, load average: 1.01, 0.45, 0.49

稼働時間などの情報を表示しています。

04:39:31 現在時刻
up 2:09 起動してからの時間。2時間9分経っているのがわかります
2 user サーバーにログインしているユーザー数
load average: 1.01, 0.45, 0.49 1,5,15分間のロードアベレージ(実行待ちプロセスの平均数)

2行目、task以下について

Tasks: 111 total, 1 running, 110 sleeping, 0 stopped, 0 zombie

存在しているプロセス数を表示しています。

111 total プロセスの合計数
1 running 実行中のプロセス数
110 sleeping スリープ状態のプロセス数
0 stopped 停止状態のプロセス数
0 zombie ゾンビ状態のプロセス数

3行目、Cpu(s)以下について

Cpu(s): 0.1% us, 0.1% sy, 0.0% ni, 99.5% id, 0.3% wa, 0.0% hi, 0.0% si

CPUの使用率についての情報です。CPUの利用時間についての情報を占有時間の割合で表示します。

us ユーザプロセスの時間
sy システムプロセスの時間
ni 実行優先度を変更したユーザプロセスの時間
id アイドル状態の時間
wa I/Oの終了待ち状態の時間
hi ハードウェア割り込み要求状態の時間
si ソフトウェア割り込み要求状態の時間

4行目、Mem以下について

Mem:  2038300k total,  1957580k used,  80720k free,   11148k buffers

物理メモリの使用状況についての情報です。

total メモリの合計容量
used 使用中のメモリ容量
free 未使用のメモリ容量
buffers バッファに使用されているメモリの容量

5行目、Swap以下について

Swap:  4194296k total,    0k used,  4194296k free,  1766164k cached

スワップ領域の使用状況についての情報です。

total スワップ領域の合計容量
used 使用中のスワップ領域
free 未使用のスワップ領域
cached キャッシュされているスワップ領域

6行目、PID以下について

PID USER   PR NI VIRT RES SHR S %CPU %MEM  TIME+ COMMAND

実行中のタスク(プロセス)の詳細を表示しています。

PID プロセスID
USER プロセスを実行しているユーザ
PR プロセスの優先度
NI ナイス値(相対優先度)
VIRT プロセスの仮想メモリ。仮想イメージ
RES タスクの使用している物理メモリ
SHR プロセスが利用している共有メモリ
S プロセスの状態(※)
%CPU CPU使用率
%MEM 実メモリ使用率
TIME+ プロセスの実行時間
COMMAND 現在実行中のコマンド

※ 'プロセスの状態'は大文字のアルファベット一文字で表示されます。

R 実行中
S スリープ状態
T 停止中
D 割り込み不可(sleep)
N ナイス値がプラスのプロセス
< ナイス値がマイナスのプロセス
Z ゾンビ状態
W スワップアウト状態

並び順のソートについて

topコマンドはCPU使用率やメモリ使用率でソートされていますが、必要に応じてソートすることも可能です。
topコマンドを入力後、結果表示画面にて Shift+o を入力すると以下の画面が表示されます。

topコマンドソート

ソートしたい項目をアルファベットで指定すると'*'が移動し、項目名の左にあるアルファベットが大文字になります。「Enter」で決定するとソート順が変更されます

その他ご質問・お問い合わせなどございましたら、お問い合わせまでご連絡ください。