プロセスごとにネットワーク帯域幅を監視する Linux ツール Nethogs のインストールと展開

プロセスごとにネットワーク帯域幅を監視する Linux ツール Nethogs のインストールと展開

概要

Linux 用のオープン ソース ネットワーク監視ツールは数多くあります。たとえば、帯域幅の使用状況を確認するには iftop を使用できます。インターフェイスの統計情報を表示するには netstat を使用し、システムで現在実行中のプロセスを監視するには top を使用します。ただし、プロセスによるネットワーク帯域幅の使用状況をリアルタイムでカウントできるツールを探している場合は、NetHogs を検討する価値があります。

NetHogs は、ほとんどのツールのように各プロトコルやサブネットを遅くするのではなく、プロセスごとに帯域幅をグループ化する小さなネットトップ ツールです。NetHogs は、特別なカーネル モジュールの読み込みに依存しません。ネットワークが混雑している場合は、NetHogs を起動して、どの PID が原因であるかをすぐに確認できます。これにより、どのプログラムが暴走して突然帯域幅を占有しているかを簡単に把握できます。

簡単に言えば、nethogs を使用して Linux 上のプロセスのトラフィックを表示できます。

インストールと展開

1. nethogs 依存パッケージをコンパイルしてインストールします。CentOS のデフォルトの rpm ウェアハウスには nethogs パッケージがないため、手動でコンパイルする必要があります。 Nethogsのコンパイルは2つのライブラリに依存しており、コンパイル前にインストールする必要があります。

# yum install libpcap libpcap-devel gcc* ncurses*

2. nethogsをダウンロードする

0.8 にはバグがあるため (ローカル IP の確立中にソケットの作成に失敗しました - ルートですか?)、ここではバージョン 0.81 が使用されます。

# wget -c 
https://github.com/raboof/nethogs/archive/v0.8.1.tar.gz 

3. コンパイルしてインストールする

# tar -xvf v0.8.1.tar.gz 
# cd nethogs-0.8.1/ 
# 作成 && インストール

#デフォルトのインストールパスは/usr/local/sbin/nethogsです

4. テスト実行:

# nethogs

使用法

1. コマンドラインパラメータ

2. 例:

例 1: リフレッシュ レートを 5 秒に設定し、-d を使用してリフレッシュ レートを指定します # nethogs -d 5 
例 2: eth0 ネットワーク帯域幅を監視する # nethogs eth0 
例 3: eth0 と eth1 インターフェースを同時に監視する # nethogs eth0 eth1 

3. 対話型コマンド:

以下は、NetHogs の対話型コマンド (キーボード ショートカット) の一部です。

m : 単位の変更

r : トラフィック順に並べ替え

s : 送信トラフィックで並べ替え

q : コマンドプロンプトを終了

NetHogs コマンドライン ツールのパラメータの完全なリストについては、NetHogs マニュアルを参照してください。これを使用するには、ターミナルでman nethogsと入力します。

要約する

上記は、編集者がプロセスごとにネットワーク帯域幅を監視するために紹介した Linux ツール Nethogs です。皆様のお役に立てれば幸いです。ご質問がある場合は、メッセージを残してください。編集者がすぐに返信します。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。
この記事が役に立ったと思われた方は、ぜひ転載していただき、出典を明記してください。ありがとうございます!

以下もご興味があるかもしれません:
  • Linux運用保守ツールSupervisor(プロセス管理ツール)のインストールと使用
  • Linux でのプロセスデーモン スーパーバイザーのインストール、構成、および使用
  • Supervisor のインストールと構成の詳細な説明 (Linux/Unix プロセス管理ツール)
  • PHPプログラマーはスーパーバイザーを使用してデーモンプロセスを実装するLinuxシリーズをプレイします
  • Linux コマンドライン ツールを使用して JSON 出力を解析およびフォーマットする方法
  • 開発者とオペレーターが注目すべき Linux デバッグ ツール [推奨]
  • Linuxでスクリーンショットを撮って編集するための最高のツール
  • Linux プロセス管理ツール スーパーバイザーのインストールと設定のチュートリアル

<<:  WindowsシステムでMySQLデータベースを完全にアンインストールして、MySQLを再インストールします

>>:  Vueの使用に関する深い理解

推薦する

WeChatアプレットが9マスグリッド効果を実現

この記事では、WeChatアプレットの9マスグリッド効果を実現するための具体的なコードを参考までに紹...

CSS3で実装されたサムネイルホバー効果

成果を達成する実装コードhtml <ヘッダー> <h1><em>...

MySQL インデックス プッシュダウンを 5 分で理解する

目次インデックス プッシュダウンとは何ですか?インデックスプッシュダウン最適化の原理インデックスプッ...

MySQL 8.0.12 のインストールと設定方法のグラフィックチュートリアル

MySQL 8.0.12のインストールと設定方法を記録してみんなで共有します。 1. インストール1...

Vue での props の使い方の紹介

序文: Vue では、props を使用して、もともと分離されていたコンポーネントを直列に接続するこ...

ウェブサイトをより高く、よりデザイン的に見せる方法

「ウェブサイトを高級感のあるものにするにはどうすればいいでしょうか? それともデザイン重視にすればい...

Mac に Windows サービスを備えた仮想マシンをインストールする方法

1. 仮想マシンをダウンロードする公式ダウンロードウェブサイト: https://www.vmwar...

InnoDBのインデックスページ構造、挿入バッファ、適応ハッシュインデックスについての簡単な説明

InnoDB インデックスの物理構造すべての InnoDB インデックスは Btree インデックス...

JS を使用して航空機戦争の小さなゲームを実装する

この記事の例では、参考のために航空機戦争ゲームを実装するためのJSの具体的なコードを共有しています。...

MySQLリモートアクセスの設定方法をステップバイステップで説明します

序文MySQL データベースを使用する場合、クライアントはデータベース サーバーにリクエストを送信す...

MySQL データ型の詳細

目次1. 数値型1.1 数値型の分類1.1.1 浮動小数点数1.1.2 ビットタイプ1.1.3 時間...

Intellij IDEA による Docker イメージの展開方法の手順の迅速な実装

目次1. Dockerはリモートアクセスを可能にする2. Intellij IDEAにDockerプ...

CentOS 6.4 MySQL 5.7.18 のインストールと設定方法のグラフィックチュートリアル

Centos6.4 で mysql5.7.18 をインストールするための具体的な手順が全員に共有され...

docker pull imageエラーの問題を解決する

説明する: Windows 10 に VM をインストールし、VM で Docker を実行し、Do...

XHTML 入門チュートリアル: テーブルタグの応用

<br />テーブルは XHTML では扱いにくいタグなので、このセクションで理解するだ...