Linux命令 nethogs - 終端下的網(wǎng)絡(luò)流量監(jiān)控工具

2022-03-16 17:59 更新

nethogs

終端下的網(wǎng)絡(luò)流量監(jiān)控工具

補(bǔ)充說明

有很多適用于Linux系統(tǒng)的開源網(wǎng)絡(luò)監(jiān)視工具。比如說,你可以用命令iftop來檢查帶寬使用情況。netstat用來查看接口統(tǒng)計(jì)報(bào)告,還有top監(jiān)控系統(tǒng)當(dāng)前運(yùn)行進(jìn)程。但是如果你想要找一個(gè)能夠按進(jìn)程實(shí)時(shí)統(tǒng)計(jì)網(wǎng)絡(luò)帶寬利用率的工具,那么NetHogs值得一看。

NetHogs 是一個(gè)開源的命令行工具(類似于Linux的top命令),用來按進(jìn)程或程序?qū)崟r(shí)統(tǒng)計(jì)網(wǎng)絡(luò)帶寬使用率。

來自NetHogs項(xiàng)目網(wǎng)站:

NetHogs是一個(gè)小型的net top工具,不像大多數(shù)工具那樣拖慢每個(gè)協(xié)議或者是每個(gè)子網(wǎng)的速度而是按照進(jìn)程進(jìn)行帶寬分組。NetHogs不需要依賴載入某個(gè)特殊的內(nèi)核模塊。如果發(fā)生了網(wǎng)絡(luò)阻塞你可以啟動NetHogs立即看到哪個(gè)PID造成的這種狀況。這樣就很容易找出哪個(gè)程序跑飛了然后突然占用你的帶寬。

本文為你介紹如何在Unix/Linux操作系統(tǒng)下如何安裝和使用NetHogs按進(jìn)程監(jiān)控網(wǎng)絡(luò)帶寬使用率。

語法

nethogs(選項(xiàng))(參數(shù))

選項(xiàng)

usage: nethogs [-V] [-h] [-b] [-d seconds] [-v mode] [-c count] [-t] [-p] [-s] [device [device [device ...]]]
  -V : 打印版本。
  -h : 打印此幫助。
  -b : bughunt模式 - 暗示tracemode。
  -d : 延遲更新刷新率(以秒為單位)。 默認(rèn)值為1。
  -v : 視圖模式(0 = KB / s,1 =總KB,2 =總B,3 =總MB)。 默認(rèn)值為0。
  -c : 更新次數(shù)。 默認(rèn)為0(無限制)。
  -t : tracemode.
  -p : 煽動混亂模式(不推薦)。
  -s : 按發(fā)送列排序輸出。
  -a : 監(jiān)控所有設(shè)備,甚至環(huán)回/停止。
  device : 要監(jiān)控的設(shè)備。 默認(rèn)是所有接口啟動和運(yùn)行,不包括環(huán)回

當(dāng)nethogs運(yùn)行時(shí),按:
  q:退出
  s:按SENT流量排序
  r:按RECEIVE流量排序
  m:在總(KB,B,MB)和KB / s模式之間切換

其他參數(shù)和用法

-d : 刷新間隔
-h : 幫助
-p : promiscious 模式
-t : trace模式 
-V : 版本

交互命令

以下是NetHogs的一些交互命令(鍵盤快捷鍵)

  • m : 修改單位
  • r : 按流量排序
  • s : 按發(fā)送流量排序
  • q : 退出命令提示符

安裝

在RHEL、CentOS和Fedora下安裝NetHogs

要安裝NetHogs,你必須要啟用你所用Linux下的EPEL源。然后運(yùn)行下面的yum命令下載安裝NetHogs包。

yum install nethogs

在Ubuntu、Linux mint和Debian下安裝NetHogs

鍵入apt-get命令安裝NetHogs包:

$ sudo apt-get install nethogs

NetHogs用法

在基于RedHat系統(tǒng)下鍵入如下命令啟動NetHogs工具。

nethogs

在Debian/Ubuntu/Linux Mint下要執(zhí)行NetHogs你必須擁有root權(quán)限:

$ sudo nethogs

!nethogs

Ubuntu 12.10 下的NetHogs預(yù)覽

正如上圖所示,send列和received列顯示的是按照每個(gè)進(jìn)程的流量統(tǒng)計(jì)??偟氖瞻l(fā)數(shù)據(jù)帶寬在最下方,而且可以用交互命令控制排序,下面將要討論這些交互命令。

NetHogs 命令行參數(shù)

以下就是NetHogs命令行的參數(shù),用-d來添加刷新頻率參數(shù),device name 用來檢測給定的某個(gè)或者某些設(shè)備的帶寬(默認(rèn)是eth0)。例如:設(shè)置5秒鐘的刷新頻率,鍵入如下命令即可:

nethogs -d 5
$ sudo nethogs -d 5

如果只用來監(jiān)視設(shè)備(eth0)的網(wǎng)絡(luò)帶寬可以使用如下命令:

nethogs eth0
$ sudo nethogs eth0

如果要同時(shí)監(jiān)視eth0和eth1接口,使用以下命令即可:

nethogs eth0 eth1
$ sudo nethogs eth0 eth1

關(guān)于NetHogs命令行工具的完整參數(shù)列表,可以參考NetHogs的手冊,使用方法是在終端里輸入man nethogs或者sudo man nethogs,更多信息請參考NetHogs項(xiàng)目主頁。


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號