topコマンドとは




■動画でわかりやすく解説してます。








では、今日も授業を始める。今日のテーマはtopコマンド(トップコマンド)だ。




topコマンドで何ができるの?




topコマンドは、CPU使用率の高い順にプロセスを表示してくれる。




どのプロセスの負荷が高いかリアルタイムにわかるってこと?




うむ。例えば、CentOSやRHELなどのLinuxサーバで、 topと入力してEnterを押すと、CPU使用率が高い順に表示される。 さらに、Shiftを押しながらmを押す(Shift+m)と、メモリ使用率の高い順に表示される。 終了するときは、Ctrlを押しながらcを押す(Ctrl+c)。




RHELって、RedHatEnterpriseLinuxっていうOSでしょ。




topコマンド使えば、CPU使用率が高いプロセスや、メモリ使用率が高いプロセスを特定できるってことね。




topコマンドで表示されたCPU使用率は、CPU全体の平均値になっている。 例えば、CPUのコア数が5個あって、それぞれ10%ずつCPUを使用している場合、 10%+10%+10%+10%+10%=50%を使っていて、 全体は5個のCPUで500%なので、全体500%のうち、50%を使用している。 よって、CPU使用率10%と表示されている。




CPUのコアごとに、CPU使用率を見たいときはどうしたらいいの?




topコマンドでCPU使用率が表示されたら、数字の「1」を押せばよい。 「1」を押すとCPUのコアごとにどれだけCPUを使っているか見ることができる。 もう一度、「1」を押せば、CPU全体のCPU使用率の表示に戻せる。




topコマンドを打つと、3秒ごとに情報(表示)が更新される。 もし1秒ごとにCPU使用率などの状況を確認したいときは、 topコマンドのオプションで、「-d」を指定して、top -d 1と入力してEnterを押せばよい。
※top -d 更新間隔(秒)
top -d 1




top -d 1 で1秒間隔になるのね。




topコマンドは他にもオプションがあり、例えば、 top -n 1と入力して、Enterを押せば1回表示して終了となる。Ctrl+cを押さなくても終了する。
※top -n 画面更新回数
top -n 1




特定のプロセスIDだけを表示したい場合は、-pオプションを使ったり、 特定のユーザが実行しているプロセスだけを表示したい場合は、-Uオプションを使う。
top -p プロセスID
top -U ユーザーID




あと、topコマンド実行後、zを押すと、画面をハイライト表示されて見やすくなったりする。




サーバのリソース状況を見るときに、topコマンドはよく使うから覚えておいて。




は~い。



今回のまとめ
■topコマンド投入時
$ top  CPU使用率順にソート
$ top -a メモリ使用率順にソート
$ top -d 更新間隔(秒)
$ top -n 画面更新回数
$ top -p プロセスID
$ top -U ユーザーID
$ top -c 実行コマンドがフルパスで出力

■topコマンド投入後に表示を変える場合
Shift + p CPU順にソート
Shift + m メモリー順にソート
「1」を入力 CPUコア単位に表示
「z」を入力 ハイライト表示



 次の章へ