DUICUO

Nethogs – 各プロセスの Linux ネットワーク トラフィックの使用状況を監視します。

概要

Linuxオペレーティングシステム向けのオープンソースのネットワーク監視ツールは数多く存在します。しかし、各プロセスのネットワーク帯域幅使用状況に関するリアルタイム統計情報を提供するツールをお探しなら、NetHogsはまさにうってつけのユーティリティです。

NetHogsツール

1. NetHogs とは何ですか?

NetHogsは、Linuxの各プロセスまたはアプリケーションが使用するネットワークトラフィック帯域幅をリアルタイムで監視するためのオープンソースのコマンドラインプログラムです。NetHogsは小型のネットワークツールです。プロトコルやサブネットごとにトラフィックを分類する多くのツールとは異なり、プロセスごとに帯域幅をグループ化します。NetHogsは特別なカーネルモジュールのロードを必要としません。ネットワークトラフィックが突然急増した場合、NetHogsを起動するだけで、問題の原因となっているPIDをすぐに確認できます。これにより、突然過負荷になり、帯域幅を消費しているプログラムを簡単に特定できます。

2. LinuxシステムにNetHogsをインストールする方法

NetHogsは多くのLinuxオペレーティングシステムにインストールできます。ご利用のLinuxディストリビューションに応じて適切なインストール方法を選択してください。

RHEL、CentOS、Rocky Linux、AlmaLinuxにNetHogsをインストールする

nethogs をインストールするには、EPEL リポジトリを使用し、次の yum コマンドを実行して nethogs パッケージをダウンロードしてインストールする必要があります。

 # yum install epel - リリース
# yum インストールnethogs

Ubuntu、Linux Mint、DebianにNetHogsをインストールする

nethogs をインストールするには、次の apt コマンドを入力して nethogs パッケージをインストールします。

 $ sudo apt install nethogs

3. NetHogsのコマンドラインオプション

NetHogs のオプションと使用法:

  • -d –リフレッシュ レートの遅延。
  • -h –使用可能なコマンドの使用法を一覧表示します。
  • -p –無差別モードでスニフします (非推奨)。
  • -t –追跡モード。
  • -V –バージョン情報を表示します。

以下はnethogsのコマンドラインオプションです。リフレッシュレートを追加するには「-d」を使用し、特定のデバイスまたはデバイス帯域幅を監視するには「デバイス名」(デフォルトはeth0)を使用します。

リフレッシュレートを5秒に設定します。

 # ネットホグス- d 5
$ sudo nethogs -d 5

特定のデバイス (eth0) のみのネットワーク帯域幅を監視します。

 # ネットホグスeth0
$ sudo nethogs eth0

eth0 および eth1 インターフェースのネットワーク帯域幅を監視する必要があります。

 # nethogs eth0 eth1
$ sudo nethogs eth0 eth1

4. NetHogsインタラクティブコントロール

nethogs プログラムの便利なインタラクティブ コントロール (キーボード ショートカット) をいくつか紹介します。

  • -m –表示される帯域幅の単位を変更します (例: KB/秒 -> KB -> B -> MB)。
  • -r –対応するトラフィックのサイズで並べ替えます。
  • -s –送信トラフィックのサイズで並べ替えます。
  • -q –シェルプロンプトを終了します。

5. 使用方法のデモンストレーション

CentOS で nethogs ユーティリティを実行します。

 # ネットホグ

上の画像からわかるように、送信行と受信行には各プロセスで使用されているトラフィックが表示されます。送信と受信の合計帯域幅使用量は下部で計算されています。インタラクティブコントロールを使用して並べ替えたり、順序を変更したりできます。