我正在寻找一个实用程序来按进程持续监控网络流量。
类似于top
,但我不想关注 CPU/内存,而是想查看网络活跃度最高的进程的 TCP 和 UDP 端口和吞吐量。我想象一个定期更新的屏幕,标题如下:
PID USER PROTO PORTNO Kbps STARTTIME COMMAND...
我能找到的最接近的是atop
和lsof -i
。atop
在主屏幕中显示聚合网络活动(而不是按进程)。点击N
以网络为中心的视图可获得:
Kernel module 'netatop' not active or no root privs; request ignored!
# When run under sudo, so how do I install the 'netatop' kernel module ?
lsof -i
显示占用端口的进程,但没有吞吐量/活动。
sudo watch netstat -Wtunape
是另一个不错的选择。它包括 IP 地址、端口(本地和远程)甚至连接状态,但不包括吞吐量和进程启动时间。
任何建议都值得感激。
答案1
您可以使用nethogs
小型“net top”工具来持续监控各个进程的网络流量。
它有 PID、USER、PROGRAM、DEV、SENT 和 RECEIVE 列。