简短的问题:在 Ubuntu 中,如何找出每个进程在特定时间间隔内(例如,过去一小时、过去一天……)使用了多少网络数据?
长问题:我使用移动数据套餐将我的 Ubuntu 机器连接到互联网。连接几个小时后,数据使用量超过 2 GB,这比预期的要多一些。所以我想知道这些数据都流向了哪里。在互联网上搜索后,我找到了几个工具,例如 nethogs。但 nethogs 只告诉我每个进程正在使用的瞬时带宽,而我并不关心这个。是否有一个工具可以告诉我每个进程在一定时间间隔内(例如,过去一小时、过去一天……)使用了多少网络数据?
任何仅显示瞬时带宽使用情况的工具都无济于事。数据吞噬过程可能只在一段我不知道的短时间内处于活动状态,因此很难说出要监视哪个时刻。
任何仅显示机器或接口(例如,eth0,wwan0等)的总数据使用情况的工具都无济于事。我已经从数据包提供商处获得了该信息。
感谢您的任何评论。
答案1
.....那就是网猪
使用默认参数运行的 nethogs 将使您得出它是不够充分的结论。
如果您阅读手册页,您可以添加一些标志,这些标志将为您提供您想要的确切结果(根据您的陈述)。
sudo nethogs -v 3