Debian/Ubuntu下安装很简单,执行:apt-get install nethogs 就可以安装。

CentOS/RHEL下建议先安装上EPEL,再执行:yum install libpcap nethogs 进行安装。

EPEL(Extra Packages for Enterprise Linux) 是由 Fedora 社区打造,为 RHEL 及衍生发行版如 CentOS等提供高质量软件包的项目。装上了 EPEL,就像在 Fedora 上一样,可以通过 yum install 软件包名,即可安装很多以前需要编译安装的软件、常用的软件或一些比较流行的软件,比如现在流行的nginx, openvpn等等,都可以使用EPEL很方便的安装更新。
安装EPEL源

CentOS/RHEL 5 :

rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-5.noarch.rpm
CentOS/RHEL 6 : rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm
CentOS/RHEL 7 : rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
Ok,安装完毕。 使用EPEL源安装软件
现在就可以执行:yum install 软件包名进行安装了,nginx、openvpn、htop、ncdu等等一些常用的软件都灰常简单的装上了。

什么是NetHogs?

NetHogs 是一个开源的命令行工具(类似于Linux的top命令),用来按进程或程序实时统计网络带宽使用率.

来自NetHogs项目网站:

NetHogs是一个小型的’net top’工具,不像大多数工具那样拖慢每个协议或者是每个子网的速度而是按照进程进行带宽分组.NetHogs NetHogs不需要依赖载入某个特殊的内核模块. 如果发生了网络阻塞你可以启动NetHogs立即看到哪个PID造成的这种状况.这样就很容易找出哪个程序跑飞了然后突然占用你的带宽.

这篇文章为你讲解了如何在Unix/Linux操作系统下如何安装和使用NetHogs按进程监控网络带宽使用率。

在RHEL,CentOS和Fedora下安装NetHogs:

要安装NetHogs,你必须要启用你所用Linux下的EPEL源.然后运行下面的yum命令下载安装NetHogs包.# yum install nethogs

# yum install nethogs

样例输出

[root@tecmint~]# yum -y install nethogs

Loaded plugins:fastest mirror,refresh-packagekit
Loading mirror speeds from cached hostfile
*base: mirrors.hns.net.in
*epel: mirror.nus.edu.sg
*extras: mirrors.hns.net.in
*rpmfusion-free-updates: mirrors.ustc.edu.cn
*rpmfusion-nonfree-updates: mirror.de.leaseweb.net
*updates: mirrors.hns.net.in
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package nethogs.i6860:0.8.-.el6 will be installed
--> Finished Dependency Resolution Dependencies Resolved ===========================================================================================================
Package Arch Version Repository Size
===========================================================================================================
Installing:
nethogs i686 0.8.-.el6 epel 28k Transaction Summary
===========================================================================================================
Install Package(s) Total download size:28k
Installed size:50k
Downloading Packages:
nethogs-0.8.-.el6.i686.rpm | 28kB :
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
Installing :nethogs-0.8.-.el6.i686 /
Verifying :nethogs-0.8.-.el6.i686 / Installed:
nethogs.i6860:0.8.-.el6 Complete!

在Ubuntu, Linux mint和Debian下安装NetHogs:

键入apt-get命令安装NetHogs包

  $ sudo apt-get install nethogs

样例输出

tecmint@tecmint:~$ sudo apt-get install nethogs

[sudo]password fortecmint:
Reading package lists...Done
Building dependency tree
Reading state information...Done
The following NEW packages will be installed:
nethogs
upgraded, newly installed, to remove and not upgraded.
Need to get .1kB of archives.
After this operation,100kB of additional disk space will be used.
Get: http://in.archive.ubuntu.com/ubuntu/ quantal/universe nethogs i386 0.8.0-1 [27.1 kB]
Fetched .1kB in 1s (.8kB/s)
Selecting previously unselected package nethogs.
(Reading database... files and directories currently installed.)
Unpacking nethogs(from .../nethogs_0.8.0-1_i386.deb)...
Processing triggers forman-db...
Setting up nethogs(0.8.-)...

NetHogs用法

在基于RedHat系统下键入如下命令启动NetHogs工具.

# nethogs

要执行NetHogs你必须拥有root权限,即如图所示用sudo命令

$ sudo nethogs

样例预览:

2

CentOS 6.3 下的NetHogs预览

3

Ubuntu 12.10 下的NetHogs预览

正如上图所示, send列和received列显示的是按照每个进程的流量统计.总的收发数据带宽在最下方,而且可以用交互命令控制排序,下面将要讨论这些交互命令:

NetHogs 命令行参数

以下就是NetHogs命令行的参数,用’-d’来添加刷新频率参数,`device name` 用来检测给定的某个或者某些设备的带宽(默认是eth0).例如:设置5秒钟的刷新频率,键入如下命令即可:

# nethogs -d 5 

$ sudo nethogs -d 5

如果只用来监视设备(eth0)的网络带宽可以使用如下命令:

# nethogs eth0

如果要同时监视eth0和eth1接口,使用以下命令即可:

# nethogs eth0 eth1

其他参数和用法

-d: delay for refresh rate.
-h: display available commands usage.
-p: sniff in promiscious mode (not recommended).
-t: trace mode.
-V: prints Version info.

NetHogs 交互控制

以下是NetHogs的一些很有用的交互控制(键盘快捷键)

-m: Change the units displayed forthe bandwidth inunits like KB/sec->KB->B->MB.
-r: Sort by magnitude of respectively traffic.
-s: Sort by magnitude of sent traffic.
-q: Hit quit tothe shell prompt.

想要NetHogs命令行工具的完整参数列表请参考NetHogs的手册,使用方法是在终端里输入‘man nethogs‘ 或者 ‘sudo man nethogs‘,更多信息请参考NetHogs项目主页.

最新文章

  1. HDU1541 树状数组
  2. Java c3p0连接池之二
  3. Linux下的压缩zip,解压缩unzip命令详解及实例
  4. [No000021]跟维多利亚学英语
  5. NHibernate概念
  6. leetcode_438_Find All Anagrams in a String_哈希表_java实现
  7. Python win7下 django-admin.py startproject mysite命令没有创建mysite?
  8. Java集合中那些类是线程安全的
  9. Hibernate学习之常用方法比较
  10. Ruby on Rails (ROR)类书籍
  11. Objective-c 多线程操作 自定义NSOperation 模拟下载
  12. [动态规划]P1004 方格取数
  13. Spring Security 源码解析(一)AbstractAuthenticationProcessingFilter
  14. Entity Framework入门教程(11)---EF6中的异步查询和异步保存
  15. 链式前向星版DIjistra POJ 2387
  16. UVA1471-Copying Books(二分答案)
  17. 解决macOS git clone Azure DevOps提示身份认证失败问题
  18. leetcode — generate-parentheses
  19. CentOS 7 下安装jdk1.8(转)
  20. Tensflow预测股票实例

热门文章

  1. Codeforces 842C--Ilya And The Tree(dfs+树)
  2. java 通过反射调用属性,方法,构造器
  3. 【CF1210D】Konrad and Company Evaluation(vector,图论)
  4. LOJ 3124 「CTS2019 | CTSC2019」氪金手游——概率+树形DP
  5. 【靶场练习_sqli-labs】SQLi-LABS Page-1(Basic Challenges)
  6. STL双端队列 deque
  7. php关键字static使用
  8. 通过生成HFile导入HBase
  9. mybatis小技巧
  10. C++中的静态成员函数