Gnomeシステムモニターでネットワークの使用率が高いことが時々あります。データをダウンロード/アップロードしているプロセスは何ですか。私を示すことができるツールはありますか?
私のシステムはUbuntu 10.10です。
私はlsof
を試しましたが、出力はとてもフレンドリーではないようです。多分それを使用するいくつかのトリックがありますか?または、より良い代替案がありますか?
netstat --inet -ap
は、インターネットを使用しているプロセスと、各プロセスが使用しているホスト/ポートを示します。ホスト名ではなくIPアドレスが必要な場合は、-n
を使用します。 (--inet
はインターネットソケットのみを示し、-a
はリスニングソケットと接続ソケットの両方を示し、-p
はプロセス名/ ID情報を示します)。 Sudo
を付けて実行すると、すべてのプロセスに関する情報が得られます。
nethogs
は、各プロセスが使用している帯域幅を示しますが、各プロセスが接続しているホストはわかりません。
ntop は少し重いですが、一般的なネットワークトラフィックの概要を示します。
(netstatはデフォルトでインストールされ、nethogsとntopはUbuntuのリポジトリで利用できます)
私が知る限り、1、2、3を組み合わせた単一のユーティリティはありません。
Nethogs は、最初の2つの要求を処理できます。 Iftop は3番目を処理できます。 iftopでpを押してポート番号を表示する必要がある場合があります。
NetHogsは小さな「ネットトップ」ツールです。ほとんどのツールのように、プロトコルごとまたはサブネットごとにトラフィックを分割する代わりに、プロセスごとに帯域幅をグループ化します。 NetHogsは、特別なカーネルモジュールのロードに依存しません。突然大量のネットワークトラフィックが発生した場合は、NetHogsを起動して、どのPIDがこれを引き起こしているかをすぐに確認できます。これにより、乱暴になり、突然帯域幅を占有しているプログラムを簡単に特定できます。
iftopはネットワーク使用状況に対して、top(1)がCPU使用状況に対して実行します。名前付きインターフェイスでネットワークトラフィックをリッスンし、ホストのペアごとの現在の帯域幅使用状況の表を表示します。
iftop
は、プロセスのtop
と同等であり、すべてを表示します。p
を押すと、ポートの表示に切り替えることができます。
netstat -p を確認してください。ただし、lsofよりも出力がわかりやすいかどうかはわかりません。また、2番目の要件を満たしません。