网站和服务器部署好之后,最容易忽略的一件事,就是“流量监控”。平时服务器看起来一切正常,但如果有一天访问变慢、带宽异常、甚至服务被重启,你往往很难第一时间判断问题出在哪里。特别是做站长的朋友,想知道服务器是不是刚刚重启过、今天用了多少流量、哪个时段流量突然升高,这些信息都非常重要。
如果你的服务器系统是 Debian 12,那么这件事其实并不复杂。你不需要一上来就搭很重的监控平台,先从最实用的流量统计工具开始,往往就能解决大部分问题。
一、最简单:vnStat(强烈推荐)
如果你的需求是“长期记录流量使用情况,而且重启后数据不要丢”,那 vnStat 是最适合入门的选择。它轻量、稳定、安装简单,尤其适合 VPS 和小型网站服务器。它不会像一些实时监控工具那样占太多资源,却能持续记录网卡流量,按天、按月查看都很方便。
重点:轻量、自动记录、重启不丢数据,非常适合服务器
1. 安装
apt update
apt install vnstat -y
2. 启动并设置开机自启
systemctl enable vnstat
systemctl start vnstat
3. 查看网卡(比如 eth0 / ens18)
ip a
4. 查看是否已经自动识别网卡
vnstat --iflist
你应该会看到类似:
Available interfaces: eth0
5.直接查看流量(关键)
vnstat -i eth0
或者直接:
vnstat
如果没有数据(常见情况)
刚装完会显示:
no data available yet
这是正常的,因为:
- vnStat 是从安装之后开始记录
- 需要等几分钟才会有数据
6. 常用查看命令
📊 实时流量:
vnstat -l
📅 今日:
vnstat -d
📆 每月统计:
vnstat -m
📈 总流量:
vnstat
数据存储在本地,即使服务器重启也不会丢
二、iftop / nload(实时但不记录)
如果你正在排查问题,比如网站突然变慢、某个接口请求变多、怀疑有异常连接,那就需要实时工具。
重点:适合排查流量异常
1.安装:
apt install iftop nload -y
2.使用:
iftop -i eth0
或:
nload
缺点:不保存历史数据(重启就没)
iftop 更适合看当前正在跑的连接和带宽占用,能直接看出谁在吃流量;nload 则界面更直观,适合快速观察网卡进出流量变化。它们都很适合临时排查,但不适合长期保存历史记录。所以,最稳妥的方式其实是:vnStat 负责长期统计,iftop 负责临时排查。
三、企业级:Netdata(推荐进阶)
如果你想要网页图表,Netdata 更省心。
有些朋友不喜欢只在命令行里看数据,更想打开浏览器直接看图表,这时候可以试试 Netdata。它不仅能看流量,还能看 CPU、内存、磁盘、进程和系统状态,整个界面很直观,对新手也比较友好。
它的优点是安装后就能用,适合想快速搭一个可视化监控面板的人。缺点也很明显:比 vnStat 更“重”一些,适合资源稍微充足一点的服务器。如果你的站点已经正式运行,流量也在慢慢增长,Netdata 会比单纯的命令行工具更适合日常观察。

重点:实时 + 历史 + Web UI + 自动监控
1.安装:
apt install curl -y
curl -L https://my-netdata.io/kickstart.sh -o netdata.sh
bash netdata.sh
2.验证
安装完成后:
systemctl status netdata
然后浏览器访问:
http://你的服务器IP:19999
四、总结
vnStat: 负责长期流量统计
iftop: 负责实时排查异常流量
Netdata: 负责可视化查看系统状态