では、今日も授業を始める。今日のテーマは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コマンドはよく使うから覚えておいて。
は~い。