【入門】topコマンドの使い方

公開日: 2024/7/29 更新日: 2024/6/27

Linuxシステムのパフォーマンスモニタリングにおいて、topコマンドは非常に重要なツールです。

本記事では、topコマンドの基本的な使い方や出力結果の読み方について解説します。

1. topコマンドの基本的な使い方

topコマンドは、システムのリアルタイムなパフォーマンス情報を表示するためのコマンドです。

以下は、基本的なtopコマンドの実行方法です。


top

このコマンドを実行すると、リアルタイムで更新されるプロセスリストやシステムリソースの使用状況が表示されます。

10. まとめ

htopコマンドはtopコマンドの拡張版であり、洗練されたインターフェースと追加の機能を提供しています。

システムの監視やトラブルシューティングにおいて、htopの利用を検討することでより効率的な作業が可能です。

どちらのコマンドも使いこなせることで、システムの状態をより深く理解し、安定性を確保する手助けとなります。

2. topコマンドの出力結果の読み方


2-1. 全体の構造

topコマンドの出力結果は、以下のような全体の構造を持っています。


・ヘッダー行
CPU使用率やメモリ使用量などの全体的なシステム情報が表示されています。

・プロセスリスト
実行中のプロセスがリストアップされており、それぞれのプロセスに関する情報が表示されています。


https://uxmilk.jp/52396

2-2. ヘッダー行の情報

ヘッダー行には以下のような情報が表示されます。


・load average(直近1分、5分、15分):
ロードアベレージは、システムがどれだけ忙しいかを示す指標です。
数値は平均ロードを表し、これが高いほどシステムが過負荷になっている可能性があります。

1分、5分、15分の期間ごとに表示され、それぞれの値が1未満であることが望ましいです。
例えば、2.0の場合はCPUが平均的に2倍の仕事を抱えていることを示します。

・Tasks:total(合計):
現在実行中のプロセスの総数。

・running(実行中):
CPUで実行中のプロセスの数。

・sleeping(スリープ中):
スリープ中のプロセスの数。

・stopped(停止中):
停止中のプロセスの数。

・zombie(ゾンビ):
ゾンビプロセスの数。
ゾンビプロセスは終了しているが親プロセスが終了処理を行っていないプロセスです。

2-3. プロセスリストの情報

PID(プロセスID): プロセスを一意に識別するためのID。

USER(ユーザー): プロセスを実行しているユーザー名。

PR(プライオリティ): プロセスの優先度。数値が低いほど優先度が高いです。

NI(Nice値): プロセスの優先度を表す別の形式。値が低いほど優先度が高いです。

VIRT(仮想メモリ使用量): プロセスが利用できる仮想メモリの総量。

RES(物理メモリ使用量): プロセスが物理メモリ上に実際に使用している量。

SHR(共有メモリ使用量): プロセスが使用している共有メモリの量。

S(状態): プロセスの状態を示します。R(実行中)、S(スリープ中)、Z(ゾンビ)、など。

%CPU(CPU使用率): プロセスがCPUをどれだけ利用しているかの割合。

%MEM(メモリ使用率): プロセスが物理メモリのうち、どれだけの割合を使用しているか。


・プロセス(Process):
コンピュータ上で実行されるプログラムの実体。
プロセスはメモリやCPUなどのシステムリソースを使用し、実行中には様々な状態を持ちます。
プロセスは一意の識別子であるプロセスID(PID)によって区別されます。

・プロセスID(PID):
プロセスを一意に識別するための番号。
LinuxやUnix系のオペレーティングシステムでは、各プロセスは一意のPIDを持っています。
これにより、特定のプロセスを識別し、管理することができます。

3. topコマンドのオプション

topコマンドには様々なオプションが存在し、それぞれ異なる情報を表示できます。


・-d seconds:
更新間隔を指定します。例えば、top -d 5は5秒ごとに更新されるようになります。

・-p pid:
特定のプロセスIDを指定して表示します。例えば、top -p 1234はPIDが1234のプロセスの情報のみ表示します。

・-u username:
特定のユーザーが実行しているプロセスのみ表示します。
例えば、top -u johnはユーザーがjohnのプロセスのみ表示します。

3-1. ソートの順番を変える方法

・shift+m     : メモリ使用率順にソート


https://beyondjapan.com/blog/2016/02/change-sort-top/



・shift+p : CPU使用率順にソート(デフォルト)


https://beyondjapan.com/blog/2016/02/change-sort-top/



更に細かく設定したい場合は、shift+oを使用する


https://beyondjapan.com/blog/2016/02/change-sort-top/



この画面にて、ソートしたい項目のアルファベットを選択してEnterキーを押す

4. topコマンドを利用したトラブルシューティング

topコマンドはシステムのパフォーマンスのトラブルシューティングに役立ちます。

例えば、CPU使用率が高いプロセスやメモリ使用量が異常に増えているプロセスを特定できます。

5. htopコマンドの活用

Linuxユーザーにとって、topコマンドはシステムのパフォーマンスモニタリングに利用される主要なツールの一つです。

しかし、htopコマンドはtopコマンドの拡張版であり、より洗練されたインターフェースと追加の機能を提供しています。

6. htopコマンドの基本的な使い方

htopコマンドもtopコマンドと同様にシステムのリアルタイムな監視が可能です。

以下はhtopコマンドの基本的な使い方です。


htop

htopコマンドの画面は直感的で、マウスの利用やカラー表示によりより分かりやすいです。

プロセスの絞り込みやソートなどが直感的に行えるのが特徴です。


このコマンドを実行すると、topコマンドよりも色彩豊かな画面が表示され、リアルタイムで更新されるプロセスリストやシステムリソースの使用状況が視覚的にわかりやすく表示されます。


https://sys-guard.com/post-6318/

7. htopコマンドの出力結果の読み方


7-1. 全体の構造

htopコマンドの出力結果も、topコマンドと同様に以下の全体の構造を持っています。


・ヘッダー行:
CPUやメモリの使用状況を示す情報が表示されています。

・プロセスリスト:
実行中のプロセスがリストアップされ、それぞれのプロセスに関する情報がカラフルに表示されます。

7-2. ヘッダー行の情報

ヘッダー行には以下のような情報が表示されます。


・PID/USER/PR/NI/VIRT/RES/SHR/S/%CPU/%MEM/TIME+:
topコマンドと同様の意味を持つプロセスに関する情報。

・S:
プロセスの状態を示す。R(実行中)、S(スリープ中)、Z(ゾンビ)、など。

・Swap:
スワップメモリの使用状況。

7-3. プロセスリストの情報

htopでは、プロセスリストがより詳細かつ視覚的に表示されます。

プロセスごとに異なる色が使われ、CPUやメモリの使用状況がグラフで表示されます。

また、キーボードの上下左右キーを使ってプロセスを選択し、さまざまなアクションを実行することができます。

8. htopコマンドのオプション

htopコマンドもtopコマンド同様に様々なオプションを利用できます。


・-d seconds:
更新間隔を指定します。

・-p pid:
特定のプロセスIDを指定して表示します。

・-u username:
特定のユーザーが実行しているプロセスのみ表示します。

・F2:
ユーザーがカスタマイズできる設定画面を開きます。

・F3 / F4:
プロセスをソートする基準を選択します。

・F9:
プロセスに対してシグナルを送るメニューを表示します。

9. htopコマンドを利用したトラブルシューティング

htopコマンドはtopコマンドよりも洗練された表示とインタラクティブな機能を提供しているため、システムのトラブルシューティングにおいても優れた効果を発揮します。

異常なプロセスやリソースの使用状況を視覚的に把握し、問題を素早く特定することが可能です。