|
|
我要入营,结交更多好友,开启更多功能,轻松玩转服务器大本营!
您需要 登录 才可以下载或查看,没有账号?我要入营
x
一、NetHogs是什么?
NetHogs 是一个开源的命令行工具,功能类似于Linux系统中的top命令,它专门用于监控每个进程或应用程序在Linux系统中实时使用的网络带宽流量。
它是一个小巧的网络流量监控工具,它不按照大多数工具那样按协议或子网来划分流量,而是将带宽按照进程进行分组。无需加载特殊的内核模块。如果网络流量突然激增,你可以快速启动NetHogs,立即查看是哪个进程ID(PID)导致了流量的增加。这让你能够轻松识别那些失控并突然占用大量带宽的程序。
在本文中,你将了解到如何在Unix/Linux系统上安装NetHogs工具,并利用它来实时监控每个进程的网络带宽使用情况。
二、安装NetHogs
NetHogs 这一网络带宽监控工具适用于多种 Linux 操作系统。根据你所使用的 Linux 发行版,你可以通过以下任一方法来安装 nethogs:
在 RHEL、CentOS、Rocky Linux 和 AlmaLinux 上安装 NetHogs 为了安装 nethogs,你需要先在基于 RedHat 的 Linux 发行版中启用 EPEL 源,随后执行以下 yum 命令来下载并安装 nethogs 软件包,具体步骤如下。
- yum install epel-release
- yum install nethogs
复制代码
在 Fedora Linux 上,使用 dnf 命令
在 Ubuntu、Linux Mint 和 Debian 中安装 NetHogs,请键入以下 apt 命令来安装 nethogs 软件包。
按进程监控带宽
要运行 nethogs 实用程序,请在基于 red-hat 的系统下键入以下命令。
在基于 Debian 的 Linux 上,您必须具有 root 权限,因此请使用 sudo 命令运行
Linux网络流量监控工具之NetHogs工具的安装与使用
从上面的内容可以看出,发送和接收列展示了每个进程正在使用的流量大小。带宽的总发送和接收用量在界面底部进行了汇总。您可以通过使用下文提到的交互式控件来对数据进行排序和调整顺序。
NetHogs命令行参数
以下是 nethogs 的一些常用命令行参数。您可以使用-d参数来设置刷新频率,并通过指定设备名称 来监控特定设备的带宽(默认设备是 eth0)。
例如,如果您想将刷新频率设置为 5 秒,您可以按照如下方式输入命令。
要仅监控特定设备 (eth0) 网络带宽,请使用命令 as。
要监控 eth0 和 eth1 接口的网络带宽,请键入以下命令。
命令行参数表
| 选项 | 描述 | | -V | 显示软件的版本信息 | | -h | 列出所有可用命令的使用方法 | | -b | 错误排查模式 - 启用追踪模式 | | -d 秒数 | 设置更新刷新延迟的时间,单位为秒,默认是1秒 | | -v 模式 | 视图模式 (0 = KB/s, 1 = 总KB, 2 = 总B, 3 = 总MB, 4 = MB/s, 5 = GB/s),默认是0
| | -c 数量 | 更新次数,默认是0(无限制) | | -t | 开启跟踪模式 | | -p | 开启混杂模式进行嗅探(不推荐) | | -s | 按发送列排序输出 | | -l | 显示命令行 | | -a | 监控所有设备,包括环回/停止的接口 | | -C | 捕获TCP和UDP流量 | | -f 过滤器 | 实验性:指定字符串形式的pcap过滤器(类似tcpdump)。该功能可能在未来版本中移除或更改 | | device | 需要监控的网络设备,默认是所有处于运行状态的接口,排除环回接口。 |
快捷键(交互式控制):
| 快捷键 | 功能 | | q | 退出程序 | | s | 按发送流量排序 | | r | 按接收流量排序 | | l | 显示命令行 | | m | 切换显示模式,总流量(KB,B,MB)和吞吐量(KB/s,MB/s,GB/s)之间切换 | 要获取nethogs工具命令行选项的完整列表,你可以在终端中输入man nethogs或 sudo man nethogs来查看其手册页
三、注意事项
1、使用nethogs时需确保以root权限或通过sudo执行,以便能够访问所有进程的网络统计信息。
2、监控特定网络接口流量时,请确认该接口名称正确无误,避免监控错误的数据。
3、在启动nethogs前安装必要的依赖库,如libpcap,以保证工具正常运行。
4、切勿在生产环境中启用混杂模式(-p参数),因为这可能带来安全风险并影响性能。
5、当使用-f参数指定pcap过滤器时,请注意这是实验性功能,可能在未来的版本中有所变化或被移除。
6、如果遇到nethogs无法识别非TCP/UDP流量的问题,可以尝试添加-C参数来捕获这些流量。
7、为了获得最佳的实时监控效果,建议不要设置过长的刷新间隔(-d 参数)。
感谢您的阅读,服务器大本营-技术文章内容集合站,助您成为更专业的服务器管理员! |
|