Categories: linuxUbuntu技術

Linux topコマンド入門から応用まで|便利オプション一覧と活用術

LinuxサーバーやPCでリソース監視をするなら「top」コマンドは必須ツールです。
この記事では、topコマンドの基礎から実務向けの便利オプション一覧、そして現場で役立つ活用テクニックまで、初心者にも分かりやすく解説します。
さらに、実行時に表示される各カラムの意味も丁寧に解説します。

topコマンドとは?

「top」コマンドは、Linux/Unix系OSで現在動作しているプロセスやシステムリソース(CPUやメモリなど)の使用状況をリアルタイムで一覧表示する監視ツールです。
管理者や運用担当者は、これによって「今、このマシンで何が起きているのか?」を即座に把握できます。

基本的な使い方

top

この1行を実行するだけで、システムの負荷状態や主要プロセスの情報が定期的に更新されながら表示されます。

主な表示内容(プロセス一覧のカラム解説付き)

実行例

topコマンドの下半分には、各プロセスの詳細が表形式で一覧表示されます。代表的なカラムは次の通りです。

カラム説明
PIDプロセスID(Process ID)。システム内で一意な識別番号です。
USERそのプロセスを実行しているユーザー名。
PRプロセスの優先度(Priority)。値が小さいほど高優先度です。
NInice値。ユーザーが調整可能な優先度補正値(-20〜+19)。
VIRT仮想メモリサイズ。プロセスが利用可能なメモリの合計量。
RES実際に物理メモリ上に存在しているサイズ(Resident Set Size)。
SHR他プロセスと共有しているメモリ量(Shared Memory)。
Sプロセス状態(S:スリープ中、R:実行中、Z:ゾンビなど)。
%CPUCPU使用率(直近の更新間隔での割合)。
%MEM物理メモリ全体に対する使用割合。
TIME+プロセスが消費した累計CPU時間(秒以下まで表示)。
COMMAND実行中のコマンド名またはパス。

これらを理解しておくと、topの画面からボトルネックの原因や異常なプロセスをすばやく見つけられます。

topコマンドの便利オプション一覧

オプション説明
-d 秒数更新間隔を変更(例: top -d 3)。
-n 回数指定回数だけ更新後終了(例: top -n 5)。
-bバッチモード(ログ保存や加工に便利)。
-p PID特定PIDのみ表示。
-u USER指定ユーザーのプロセスだけ表示。
-U USER実ユーザーによるフィルタ。
-Hスレッド単位で表示。
-cコマンドライン引数も表示。
-iアイドルプロセスを表示しない。
-sセキュアモードで起動。
-S累積CPU使用時間を表示。
-wワイド表示(横幅拡張)。
-t実行時間(TIME+)でソート。

実用的な活用例

ログとして保存(2秒間隔で3回)

top -b -d 2 -n 3 > toplog.txt

特定ユーザーのプロセスを表示

top -u username

特定PIDだけ監視

top -p 1234

スレッドごとの動きを確認

top -H

インタラクティブ操作(実行中のキー操作)

キー機能
hヘルプ表示
kプロセス終了(PID指定)
r優先度変更(renice)
uユーザーフィルタ
PCPU使用率順にソート
Mメモリ使用量順にソート
T実行時間順にソート
1CPUコアごとの利用率を表示
qtopを終了

システム監視をスマートにする実践ノウハウ

  • 結果をバッチ保存してレポート作成
    • -bとリダイレクトで時系列データを残せます。
  • 障害調査は対象を絞り込む
    • -u-pで必要な情報だけを見るのが効率的。
  • 画面表示はカスタマイズ可能
    • 並び替えキーや.toprc設定で最適化。
  • カラムの意味を理解しておく
    • 上記のカラム説明を覚えることで、異常プロセスを即発見可能。

まとめ

topコマンドはLinux管理の即戦力ツールです。
本記事で紹介したオプション、カラムの意味、応用例を組み合わせれば、システム監視・負荷解析・トラブルシュートが格段に効率化します。
「数字の意味が分かる」状態を作れば、情報は一気に武器になります。

にいやん

出身 : 関西 居住区 : 関西 職業 : 組み込み機器エンジニア (エンジニア歴13年) 年齢 : 38歳(2022年11月現在) 最近 業務の効率化で噂もありPython言語に興味を持ち勉強しています。 そこで学んだことを記事にして皆さんとシェアさせていただければと思いブログをはじめました!! 興味ある記事があれば皆さん見ていってください!! にほんブログ村