はじめに

こんにちは!今回はhtopコマンドについて解説します。

htopは、システムのプロセスとリソース使用状況をリアルタイムで表示するコマンドです。topコマンドと似ていますが、使いやすくていろいろ便利な機能があります。

カラフルで見やすく、キーボード操作で直感的にプロセスを管理できるので、サーバーの監視には欠かせませんね!


htopコマンドとは

htopは、システムのプロセスとリソース使用状況をインタラクティブに表示する外部コマンドです。

CPUやメモリの使用状況、実行中のプロセス一覧をリアルタイムで確認できます。topよりも機能が充実していて、プロセスの強制終了や優先度の変更も簡単にできます。

オープンソースのツールで、システム管理者の間で愛用されています。


基本構文

1
htop [オプション]

オプションなしでそのまま実行すると、インタラクティブな画面が表示されます。


主なオプション

オプション 説明
-u ユーザー名 特定ユーザーのプロセスのみ表示
-p PID 特定のプロセスID(複数指定可)
-s カラム 指定したカラムでソート
-H スレッドを別々に表示
-C CPUアフィニティを表示
-M メモリ使用量でソート

使用例

例1: htopを起動

1
htop

実行結果:

1
2
3
4
5
6
7
8
  1  [████████████████████  ] Tasks: 125, 2 thr, 45 running
  2  [████████████          ] Load average: 2.34 1.98 1.76
  Mem[████████████████░░░░░] 7856M/15932M
  Swp[░░░░░░░░░░░░░░░░░░░░] 0K/2048M

  PID USER      PRI  NI  VIRT   RES   SHR S CPU% MEM%   TIME+  Command
  1234 root       20   0  456M  234M  123M S  5.0 1.5   45:23  /usr/bin/python
  1235 user1      20   0  234M  156M   89M S  3.2 1.0   23:45  chrome

インタラクティブ画面でプロセス情報が表示されます。

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

1
htop -u username

実行結果:

1
usernameが実行しているプロセスのみが表示されます。

特定のユーザーのプロセスのみをフィルタリングします。

例3: 特定のプロセスを表示

1
htop -p 1234

実行結果:

1
PID 1234のプロセスのみが表示されます。

特定のプロセスIDを監視する場合に便利です。

例4: メモリ使用量でソート

1
htop -M

実行結果:

1
メモリ使用量が多い順にプロセスが表示されます。

メモリを大量に使っているプロセスを素早く見つけられます。

例5: CPU使用率でソート

1
2
htop
# 画面内で'f'キーを押してフィルタ設定、'C'で列選択

実行結果:

1
CPU使用率の高い順に表示されます。

例6: プロセスの優先度を変更

1
2
htop
# プロセスを選択して'n'キーを押す

実行結果:

1
選択したプロセスの優先度を変更できます。

キーボードで直感的に優先度変更ができます。

例7: プロセスを強制終了

1
2
htop
# プロセスを選択して'k'キーを押す、その後'9'を選択

実行結果:

1
選択したプロセスが強制終了されます。

GUIのように操作できます。

例8: スレッド表示

1
htop -H

実行結果:

1
マルチスレッドプロセスのスレッドが別々に表示されます。

マルチスレッドアプリケーションの詳細確認に便利です。

例9: フルコマンド名を表示

1
2
htop
# '\\' キー(バックスラッシュ)を押す

実行結果:

1
プロセスのフルコマンドラインが表示されます。

引数まで含めたコマンド全体が見られます。

例10: ツリー表示でプロセス階層を確認

1
2
htop
# 't' キーを押す

実行結果:

1
プロセスの親子関係がツリー状に表示されます。

プロセス間の関係性を視覚的に理解できます。


Tips・注意点

インストール

htopが標準で入っていない場合はインストールが必要です:

1
2
3
4
5
# Ubuntu/Debian
sudo apt-get install htop

# CentOS/RHEL
sudo yum install htop

キーボードショートカット

htop内で利用できる便利なキー操作:

  • h: ヘルプ表示
  • f: フィルタリング
  • s: ソート設定
  • u: ユーザーフィルタ
  • k: プロセス強制終了(Ctrl+Cと同等)
  • n: 優先度変更
  • t: ツリー表示切り替え
  • q: 終了

リアルタイム監視

1
watch htop

watchコマンドと組み合わせて、htopの履歴を監視することもできます。


実践的な使い方

メモリリークの調査

1
htop -M

メモリ使用量が増え続けているプロセスをhtopで監視します。

CPUバウンドなプロセスの特定

1
2
htop
# 'P' キーでCPU使用率でソート

CPU使用率の高いプロセスを特定し、アプリケーションの最適化に役立てます。

バックグラウンドプロセスの管理

1
htop -u $USER

自分が実行しているプロセスのみを監視します。

プロセスのスレッド分析

1
htop -H

マルチスレッドアプリケーションのスレッド動作を詳細に確認できます。


まとめ

htopコマンドのポイント:

  • システムリソース監視のための対話的ツール
  • topより使いやすく、機能が充実
  • -u: 特定ユーザーのプロセスのみ表示
  • -p: 特定のプロセスのみ表示
  • -M: メモリ使用量でソート
  • キーボード操作で直感的にプロセス管理が可能
  • よく使う組み合わせ: htop -u username, htop -M

システム管理やパフォーマンス監視に欠かせないコマンド。topよりも使いやすいので、ぜひインストールして使ってみてください!