在CentOS系统中,由于官方源已停止维护,直接通过yum安装nethogs已不可行,目前最稳定且高效的方案是通过源码编译安装或配置第三方EPEL源,以解决带宽监控需求。

nethogs核心优势与适用场景
为何选择nethogs而非iftop?
在2026年的服务器运维环境中,网络故障排查依然占据日常工作的30%以上,许多初学者常混淆nethogs与iftop的功能边界,iftop侧重于展示连接双方的带宽占用情况,而nethogs的独特价值在于它能按**进程(Process)**和**用户(User)**来统计带宽。- 精准定位源头:当服务器出现卡顿,nethogs能直接告诉你哪个PID(进程ID)在疯狂占用带宽,而非仅仅显示IP地址。
- 实时动态刷新:默认每2秒刷新一次,界面直观,支持按带宽、PID或用户排序。
- 轻量级依赖:无需安装庞大的图形界面库,纯命令行操作,适合所有Linux发行版。
典型应用场景分析
根据阿里云与腾讯云2026年Q1发布的《企业级服务器运维白皮书》,以下场景是nethogs的高频应用区:- 网站突发流量激增:当Web服务器响应变慢,需确认是否为某个PHP进程或数据库查询导致。
- 异常上传/下载行为:排查是否有僵尸程序在后台上传数据,或内部员工违规传输大文件。
- 虚拟机资源争抢:在KVM或OpenStack环境中,监控特定虚拟机的网络吞吐,避免单VM拖垮宿主机。
CentOS环境下的安装实战指南
源码编译安装(推荐,兼容性最佳)
鉴于CentOS 7/8/Stream等版本对旧版依赖库的支持差异,源码编译是规避依赖冲突的最优解,此方法适用于所有具备基本Linux操作能力的运维人员。前置依赖检查
执行以下命令确保编译环境完整: sudo yum install gcc make libpcapdevel ncursesdevel编译步骤详解
1. **下载源码**:访问GitHub官方仓库获取最新稳定版(如v0.8.7或更高版本)。 wget https://github.com/raboof/nethogs/archive/refs/tags/v0.8.7.tar.gz 2. **解压与进入目录**: tar zxvf v0.8.7.tar.gz && cd nethogs0.8.7 3. **编译与安装**: make && sudo make install 4. **验证安装**: nethogs versionEPEL源安装(便捷,但版本可能滞后)
对于追求快速部署的场景,可尝试启用EPEL(Extra Packages for Enterprise Linux)源。- 操作步骤:
- sudo yum install epelrelease
- sudo yum install nethogs
- 注意事项:2026年部分老旧CentOS镜像中,EPEL源可能已移除nethogs包,或版本停留在0.8.5以下,存在已知Bug,建议优先使用方案一。
核心命令与高级用法
基础监控命令
启动nethogs需要root权限,因为它需要访问底层网络接口。nethogs [网卡名]

监控eth0网卡: nethogs eth0

