Linux命令:nethogs
nethogs 命令基本介绍nethogsNetwork Top是 Linux 系统中用于按进程实时监控网络带宽使用情况的工具。与iftop等工具不同nethogs显示每个进程的网络流量可以快速定位消耗带宽的具体程序是网络性能监控和故障诊断的重要工具。资料合集https://pan.quark.cn/s/6fe3007c3e95、https://pan.quark.cn/s/561de99256a5、https://pan.quark.cn/s/985f55b13d94、https://pan.quark.cn/s/d0fb20abd19a语法nethogs [OPTIONS] [DEVICE]常用选项基本选项-d, --delaySECS设置刷新间隔秒默认 1 秒-t, --tracemode跟踪模式非交互式输出-c, --countNUM更新 NUM 次后退出-p, --promisc启用混杂模式-v, --version显示版本信息-h, --help显示帮助信息显示选项-V, --viewMODE显示模式0KB/s, 1KB, 2MB, 3GB-s, --sortMODE排序模式0发送, 1接收, 2合计, 3PID-a, --all监控所有设备-b, --buftrace启用缓冲区跟踪其他选项-P, --processfilterPID只显示指定进程-A, --accountNET只监控指定网络-S, --savefileFILE保存统计数据到文件使用示例1. 基本使用nethogs输出示例NetHogs version 0.8.5 PID USER PROGRAM DEV SENT RECEIVED 1234 user /usr/bin/chrome eth0 100.00 KB/s 500.00 KB/s 4567 user /usr/bin/node eth0 50.00 KB/s 250.00 KB/s 7890 root /usr/sbin/nginx eth0 20.00 KB/s 100.00 KB/s TOTAL 170.00 KB/s 850.00 KB/s2. 指定网络接口nethogs eth0 nethogs wlan03. 设置刷新间隔nethogs-d24. 跟踪模式输出nethogs-tnethogs-t-c105. 按接收排序nethogs-s16. 只显示指定进程nethogs-P1234nethogs-P1234,45677. 监控所有设备nethogs-a8. 以 KB 为单位显示nethogs-V19. 保存统计数据nethogs-Sstats.txt-c60输出格式说明主要字段说明字段说明PID进程 IDUSER进程所属用户PROGRAM程序路径或名称DEV网络接口SENT发送速率默认 KB/sRECEIVED接收速率默认 KB/s显示模式模式编号单位说明0KB/s千字节/秒默认1KB千字节2MB兆字节3GB吉字节排序模式模式编号说明0按发送量排序1按接收量排序2按合计排序默认3按 PID 排序交互命令在nethogs运行时可以使用以下交互命令命令说明m切换显示模式KB/s, KB, MB, GBr按接收排序s按发送排序t按合计排序p按 PID 排序q退出 nethogs实用技巧定位高带宽进程# 实时监控所有进程nethogs-a# 跟踪模式记录数据nethogs-t-c60bandwidth_log.txt分析特定进程# 只监控 Chromenethogs-P$(pgrep chrome)# 只监控 Node.jsnethogs-P$(pgrepnode)监控特定时间段# 监控 5 分钟nethogs-t-c300# 保存到文件nethogs-Snetwork_stats.txt-c300脚本中使用# 获取发送最多的进程top_sender$(nethogs-t-c1|grep-v^NetHogs|grep-v^TOTAL|sort-k5-r|head-1)echoTop Sender:$top_sender对比不同时间段的带宽使用# 记录初始状态nethogs-t-c1before.txt# 运行一些网络活动# ...# 记录结束状态nethogs-t-c1after.txt# 对比分析diffbefore.txt after.txt相关命令top实时系统监控htop增强版 topiftop网络带宽监控按连接netstat网络连接统计ss套接字统计工具tcpdump网络流量捕获iptraf网络流量统计工具bmon带宽监控工具注意事项权限要求nethogs需要 root 权限才能正常运行安装方法Debian/Ubuntuapt-get install nethogsCentOS/RHELyum install nethogs性能影响nethogs本身会产生一定的系统开销混杂模式使用-p选项会启用混杂模式兼容性某些旧版本内核可能不完全支持实时性刷新间隔会影响显示的实时性总结nethogs是 Linux 系统中用于按进程实时监控网络带宽使用情况的强大工具。它可以帮助系统管理员快速定位消耗带宽的具体程序是网络性能监控和故障诊断的必备工具。通过结合其他工具如 tcpdump、netstat、ss可以全面了解系统的网络状态。