htop で様々な基準でプロセスをソートする方法

LinuxLinuxBeginner
オンラインで実践に進む

💡 このチュートリアルは英語版からAIによって翻訳されています。原文を確認するには、 ここをクリックしてください

はじめに

htopユーティリティは、Linux システムにおける従来のtopコマンドを拡張したものです。システムリソースの監視とプロセスのリアルタイム管理を行うための、ユーザーフレンドリーでインタラクティブなインターフェースを提供します。このチュートリアルでは、CPU 使用率、メモリ消費量、プロセス ID など、さまざまな基準でプロセスをソートすることに焦点を当てて、htopの使用方法を説明します。

htopでプロセスを効果的にソートする方法を学ぶことで、以下のことができるようになります。

  • リソースを大量に消費するアプリケーションをすばやく特定する
  • システムのパフォーマンスをより効率的に監視する
  • トラブルシューティング時に特定のプロセスを見つける
  • システムリソースをより適切に管理する

htop のインストールと起動

最初のステップとして、Ubuntu システムにhtopユーティリティをインストールし、初めて起動します。

htop のインストール

htopを使用する前に、インストールする必要があります。ターミナルを開き、次のコマンドを実行します。

sudo apt update
sudo apt install htop -y

最初のコマンドはパッケージリストを更新し、2 番目のコマンドはhtopパッケージをインストールします。-yフラグは、インストールを自動的に確認します。

次のような出力が表示されるはずです。

Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following NEW packages will be installed:
  htop
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 132 kB of archives.
After this operation, 301 kB of additional disk space will be used.
Get:1 http://archive.ubuntu.com/ubuntu jammy/main amd64 htop amd64 3.0.5-7build2 [132 kB]
Fetched 132 kB in 1s (132 kB/s)
Selecting previously unselected package htop.
(Reading database ...
Unpacking htop (3.0.5-7build2) ...
Setting up htop (3.0.5-7build2) ...
Processing triggers for man-db (2.10.2-1) ...

htop の起動

htopがインストールされたので、ターミナルで次のコマンドを入力するだけで起動できます。

htop

以下が表示されるインタラクティブなディスプレイが表示されるはずです。

  • CPU、メモリ、スワップの使用状況バーを含むヘッダー
  • システムで実行中のプロセスを示すプロセスリスト
  • キーボードショートカットを含むフッター
htop initial screen

インターフェースを少し観察してください。プロセスリストには通常、次の列が含まれています。

  • PID (Process ID)
  • USER (Process owner)
  • PRI (Priority)
  • NI (Nice value)
  • VIRT (Virtual memory)
  • RES (Resident memory)
  • SHR (Shared memory)
  • S (Status)
  • CPU% (CPU usage percentage)
  • MEM% (Memory usage percentage)
  • TIME+ (CPU time)
  • Command (Process name/command)

探索が終わったら、htopを終了するには、キーボードのqキーを押します。

htop インターフェースのナビゲーション

htopをインストールして起動したので、そのインターフェースを探索し、ナビゲーション方法を学びましょう。

htop での基本的なナビゲーション

次のように入力して、もう一度htopを起動します。

htop

矢印キーの使用

htopインターフェースでは、以下のように操作します。

  • UpキーとDownキーを使用して、プロセスリスト内をカーソルで移動します
  • プロセスリストが画面よりも広い場合は、LeftキーとRightキーを使用して水平方向にスクロールします

これらの矢印キーを使用して、プロセスリスト内をナビゲートしてみましょう。

ページスクロール

多数のプロセスが実行されている場合は、以下を使用できます。

  • Page UpキーとPage Downキーを使用して、プロセスのページをスクロールします
  • Homeキーを使用して、最初のプロセスにジャンプします
  • Endキーを使用して、最後のプロセスにジャンプします

ディスプレイの理解

htopディスプレイの主要なコンポーネントを理解しましょう。

  1. ヘッダー: システム全体の情報を表示します

    • CPU 使用率バー(CPU コアごとに 1 つ)
    • メモリ使用率バー
    • スワップ使用率バー
    • 稼働時間(システムが実行されている時間)
    • 負荷平均(過去 1、5、15 分間のシステム負荷)
  2. プロセスリスト: 各プロセスの詳細情報を表示します

    • 各列は、プロセスの異なる属性を表します
    • 現在選択されているプロセスがハイライト表示されます
  3. フッター: 利用可能なキーボードショートカットを表示します

    • 一般的なアクション用のファンクションキー(F1〜F10)
    • これらのショートカットは、htopを効果的に使用するために不可欠です

基本的なナビゲーションをテストしてみましょう。リストでhtopプロセス自体を見つけてみてください。実行中のプロセスの中に表示されるはずです。矢印キーを使用してスクロールし、見つけてください。

htop内でヘルプを表示するには、F1キーまたはhキーを押します。これにより、キーボードショートカットの完全なリストを含むヘルプ画面が開きます。

ヘルプ画面を終了するには、Escapeキーまたはqキーを押します。

探索が終わったら、qキーを押してhtopを終了します。

htop でのプロセスのソート

さまざまな基準に基づいてプロセスをソートできる機能は、htopの最も便利な機能の 1 つです。このステップでは、リソースを大量に消費するアプリケーションを簡単に識別したり、特定のプロセスを見つけたりするために、プロセスをソートするさまざまな方法を学びます。

htop でのソート方法

もう一度htopを起動します。

htop

ソートメニューの使用

プロセスをソートする最も簡単な方法は、専用のソートメニューを使用することです。

  1. htop内でF6キーを押します。これにより、ソートメニューが開きます。

  2. ソートできる列のリストが表示されます。

    • PID
    • USER
    • PRIORITY
    • NICE
    • M_SIZE (Memory size)
    • M_RESIDENT (Resident memory)
    • M_SHARE (Shared memory)
    • STATE
    • PERCENT_CPU
    • PERCENT_MEM
    • TIME
    • COMM (Command)
  3. 矢印キーを使用して列を選択し、Enterキーを押してその列でソートします。

たとえば、CPU 使用率でソートするには、次の手順を実行します。

  1. F6キーを押します
  2. 矢印キーを使用してPERCENT_CPUを選択します
  3. Enterキーを押します

これで、プロセスは CPU 使用率でソートされ、CPU を最も多く消費するプロセスが上部に表示されます。

直接ソートショートカット

htopは、一般的なソートオプション用の直接キーボードショートカットも提供しています。

  • Pキーを押すと、CPU 使用率(Processor)でソートされます
  • Mキーを押すと、メモリ使用率でソートされます
  • Tキーを押すと、時間(累積 CPU 時間)でソートされます
  • Nキーを押すと、プロセス ID でソートされます

これらの各ショートカットを試して、プロセスリストがどのように変化するかを確認してください。

たとえば、Mキーを押してメモリ使用率でソートします。プロセスが、最もメモリを消費するものが上部に配置されることに注目してください。

ソート順序の反転

I(大文字の i)キーを押すと、現在のソート順序を反転できます。これにより、昇順と降順が切り替わります。

Pキーで CPU 使用率でソートし、Iキーを押して順序を反転してみましょう。CPU 使用率が最も低いプロセスが上部に表示されるようになります。

列のハイライト表示

特定の列でソートすると、その列がハイライト表示され、現在のソートキーであることを示します。これにより、現在どの基準を使用してプロセスをソートしているかを簡単に把握できます。

さまざまなソート方法を試して、選択内容を反映するようにハイライト表示される列がどのように変化するかを観察してください。

実用的な例:メモリを大量に消費するプロセスの検索

特定のシナリオで練習してみましょう。どのプロセスが最も多くのメモリを消費しているかを特定したいとします。

  1. Mキーを押して、メモリ使用率でソートします
  2. プロセスは、メモリ消費量(高い順)で並べ替えられます
  3. リストの上位のプロセスは、システムで最もメモリを大量に消費するアプリケーションです

このソート方法は、メモリの問題をトラブルシューティングしたり、メモリリークを特定したりする場合に非常に役立ちます。

探索が終わったら、qキーを押してhtopを終了します。

ソートされた情報に基づくプロセスの管理

htopでプロセスをソートする方法を学んだ後、このソートされた情報を効果的に使用してプロセスを管理する方法を説明します。

htop でのプロセス管理アクション

もう一度htopを起動します。

htop

プロセスの選択と管理

プロセスをソートし、関心のあるものを特定したら、それらに対してさまざまなアクションを実行できます。

  1. プロセスの選択: 矢印キーを使用して移動します
  2. プロセスの詳細の表示: F2キーを押して表示をカスタマイズするか、spaceキーを押してバッチ操作のためにプロセスにタグを付けます
  3. プロセスの強制終了: F9キーを押してプロセスにシグナルを送信します(たとえば、終了させるなど)
  4. プロセスの優先度の変更: F7キーを押して優先度を下げる(nice 値を高くする)か、F8キーを押して優先度を上げる(nice 値を低くする)

これらのアクションを練習してみましょう。

リソースを大量に消費するプロセスのソートと検査

  1. Pキーを押して、CPU 使用率でソートします
  2. 矢印キーを使用して、CPU を最も多く消費するプロセスの 1 つに移動します
  3. F9キーを押して、「シグナルを送信」メニューを開きます
    • 実際には強制終了シグナルを送信しません。これはデモンストレーションのためです
    • Escキーを押して操作をキャンセルします

ソート機能を使用すると、リソースを大量に消費するプロセスを簡単に識別して管理できることがわかります。

プロセスの優先度の変更

プロセスをソートした後、特定のリソースを大量に消費するプロセスの優先度を調整することもできます。

  1. Mキーを押して、メモリ使用率でソートします
  2. メモリ使用率の高いプロセスに移動します
  3. F8キーを押して、優先度調整メニューを開きます
    • これにより、優先度を上げることができます
    • 変更を加えることなくキャンセルするには、Escキーを押します

ユーザーによるソート

マルチユーザー環境では、ユーザー別にプロセスをソートすることもできます。

  1. F6キーを押して、ソートメニューを開きます
  2. USERを選択し、Enterキーを押します
  3. プロセスはユーザー別にグループ化されるため、どのユーザーがどのプロセスを実行しているかを簡単に確認できます

ソートを使用したツリービュー

htopは、プロセス間の親子関係を示すツリービューを提供します。

  1. F5キーを押して、ツリービューを切り替えます

  2. プロセスが階層的にどのように編成されているかに注目してください

  3. ツリービューでもソートを使用できます

    • Pキーを押して、CPU 使用率でソートします
    • プロセスは、ソートされていても階層的な関係を維持します
  4. フラットビューに戻るには、もう一度F5キーを押します

プロセスのフィルタリング

ソートとフィルタリングを組み合わせて、プロセスリストを絞り込むことができます。

  1. F4キーを押して、フィルターを有効にします

  2. 検索語句(例:bash)を入力します

  3. Enterキーを押して、フィルターを適用します

  4. これらフィルタリングされた結果を、任意のソート方法を使用してソートできるようになりました

    • Pキーを押して、フィルタリングされたプロセスを CPU 使用率でソートします
    • Mキーを押して、フィルタリングされたプロセスをメモリ使用率でソートします
  5. フィルターをクリアするには、もう一度F4キーを押してからEscキーを押します

システム監視のためのソートされた情報の使用

htopでのソートは、継続的なシステム監視に特に役立ちます。

  1. Pキーを押して、CPU 使用率でソートします
  2. ターミナルでhtopを実行したままにします
  3. 定期的に、どのプロセスが上部に表示されているかを確認して、システムパフォーマンスを監視します
  4. 異常なリソース使用パターンに気付いた場合は、さらに調査できます

探索が終わったら、qキーを押してhtopを終了します。

まとめ

このチュートリアルでは、強力なhtopユーティリティを使用して、Linux でプロセスを監視および管理する方法を学びました。以下の実践的なスキルを習得しました。

  • Ubuntu へのhtopのインストールと起動
  • htopインターフェースのナビゲートと主要コンポーネントの理解
  • CPU 使用率、メモリ消費量、プロセス ID などのさまざまな基準を使用したプロセスのソート
  • 効率的なプロセスソートのためのキーボードショートカットの使用
  • ソートされた情報に基づくプロセスの管理
  • プロセスフィルタリングやツリービューなどの高度な機能の使用

これらのスキルにより、システムのパフォーマンスを効果的に監視し、リソースを大量に消費するプロセスをすばやく特定し、プロセス管理について情報に基づいた意思決定を行うことができます。パフォーマンスの問題のトラブルシューティング、システムリソースの最適化、または単にシステムを監視している場合でも、htopのソート機能は、すべてのレベルのシステム管理者と Linux ユーザーに貴重なツールセットを提供します。

システムプロセスを定期的に監視すると、最適なパフォーマンスを維持し、重大な問題になる前に潜在的な問題を特定するのに役立つことを忘れないでください。