1. 为什么你需要监控Ubuntu的网络流量?
不知道你有没有遇到过这种情况:明明没在下载大文件,也没看高清视频,但家里的网络突然就变得很慢,甚至卡顿。或者,你管理的服务器每个月流量费用莫名超标,却找不到“元凶”。如果你用的是Ubuntu系统,无论是桌面版还是服务器版,学会监控网络流量绝对是一项能让你省心又省钱的技能。
我自己就吃过亏。几年前我跑一个个人项目,租了一台最便宜的云服务器,结果月底账单出来,流量费比月租还贵!当时完全懵了,根本不知道流量花在哪了。后来才知道,是项目里一个日志上报功能写错了,一直在疯狂发送数据。从那以后,我就养成了定期检查服务器流量的习惯。
在Ubuntu上,监控流量主要有两个方向:实时监控和历史统计。实时监控就像看直播,能立刻看到哪个程序正在“偷跑”流量;历史统计则像看账单,帮你分析过去一段时间(比如昨天、上周、上个月)的流量消耗趋势。今天要介绍的两个神器——nethogs和vnstat,正好完美覆盖了这两个需求。nethogs帮你抓“现行犯”,vnstat帮你做“数据分析”。对于开发者、运维同学,甚至是好奇的极客用户,掌握它们都能让你对系统的网络行为了如指掌。
2. 实时流量侦探:nethogs深度使用指南
当你感觉网络变慢,第一反应肯定是:“哪个程序在占网速?”这时候,系统自带的netstat、iftop虽然也能看连接,但不够直观。而nethogs的强大之处在于,它能直接按进程(Process) 来显示实时流量,界面简单粗暴,一眼就能锁定目标。
2.1 安装与快速上手
在Ubuntu上安装nethogs非常简单,因为它就在官方软件源里。打开终端,输入以下命令:
sudo apt update
sudo apt install nethogs
安装完成后,最基本的用法就是直接以root权限运行:
sudo nethogs
你会看到一个不断刷新的界面,大概长这样:
PID USER PROGRAM DEV SENT RECEIVED
1234 alice firefox wlp3s0 12.123 5.456 KB/sec
5678 bob /usr/lib/chromium wlp3s0 0.000 1.234 KB/sec
... ... ... ... ... ...
这个界面里,SENT和RECEIVED就是该进程每秒发送和接收的数据量,单位默认是KB/sec。流量大的进程自然会排在上面。想退出?按 q 键就行。
2.2 进阶技巧与实用参数
只会用sudo nethogs可不够,下面这几个参数能帮你应对更复杂的场景:
-
指定监控的网络接口:如果你的电脑有有线网卡(比如
eth0)和无线网卡(比如

2186

被折叠的 条评论
为什么被折叠?



