一、使用编译安装
此方法适合所有的 Linux 发行版本
首先,从官网下载 vnStat :
wget http://humdi.net/vnstat/vnstat-1.11.tar.gz
解压:
tar xvzf vnstat-1.11.tar.gz
进入目录:
cd vnstat-1.11
编译安装:
make && make install
如果没有make命令,则需要安装gcc和make
CentOS 下:
yum -y install gcc make
Debian / Ubuntu 下:
sudo apt-get install gcc make
编译安装完毕,通过ifconfig -a查看你的网卡,通常显示如下:
eth0 Link encap:Ethernet HWaddr 00:16:3e:a3:c3:9c
inet addr:10.0.0.10 Bcast:10.0.0.63 Mask:255.255.255.192
inet6 addr: fe80::216:3eff:fea3:c39c/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:136503286 errors:0 dropped:189069 overruns:0 frame:0
TX packets:53219265 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:17989373908 (17.9 GB) TX bytes:24055536418 (24.0 GB)
Interrupt:32
则你的 VPS 或服务器的网卡为eth0
然后生成 vnStat 数据库:
/usr/bin/vnstat -u -i eth0
如果你的网卡不是eth0,则要修改成相应的网卡名称,并修改/etc/vnstat.conf的Interface "eth0"为你的网卡名称。
接着可以启动 vnStat :
vnstatd -d
这种方法有一个问题,就是偶尔会停止统计流量,尤其是在 CentOS 下,当流量数据库大了以后,经常会出现 bug ,在这里我们推荐使用源安装。
二、使用源安装 vnStat
CentOS 下需要导入第三方 EPEL 源,具体方法摸这里
然后安装 vnStat
yum -y install vnstat
生成数据库
vnstat -u -i eth0
修改/etc/cron.d/vnstat文件,最后一行改为
*/5 * * * * root /usr/sbin/vnstat.cron
设置 vnStat 重启后自动运行
chkconfig vnstat on
Debian / Ubuntu 下不需要导入第三方源,直接用apt安装即可:
sudo apt-get install vnstat
接着赋予权限
sudo chmod o+x /usr/bin/vnstat
sudo chmod o+wx /var/lib/vnstat/
然后生成数据库
vnstat -u -i eth0
安装完毕,不得不赞 Debian 系,后面的动作都已经自动帮你设置好。
三、 vnStat 常见使用方法
查看当前实时流量
vnstat -l
查看每天流量统计
vnstat -d
查看每月流量统计
vnstat -m
查看流量报表
vnstat
查看具体某个网卡实时流量
vnstat -l -i eth0
另外,使用的流量和你使用的带宽没多大关系。