Linux安装vnstat监控流量

0

vnstat主要用来流量统计的,如果使用yum安装是最方便的,什么都不用管。
如果源里面没有这个安装包,那么就需要我们自己编译安装。

下载地址:https://humdi.net/vnstat/

安装命令:

#解压
tar zxvf vnstat-1.18.tar.gz

#编译安装
./configure
make
make install

#添加服务
cp examples/init.d/centos/vnstat /etc/rc.d/init.d/

#启动服务
service vnstat start

#开机启动
chkconfig vnstat on

#查看状态
service vnstat status

#设置监控网卡
vnstat -u -i eth0

#查看信息
vnstat -d
vnstat -m
vnstat -d -i eth0

其实最重要的就是添加服务,脚本一般都在vnstat-1.18/examples这个目录下面,添加到对应的目录下面就可以了。

注意CentOS7的服务添加:

#添加服务
cp examples/systemd/vnstat.service /usr/lib/systemd/system

#启动服务
systemctl start vnstat

#开机启动
systemctl enable vnstat

#查看状态
systemctl status vnstat

安装上面的操作启动后,查询状态提示:

● vnstat.service - vnStat network traffic monitor
   Loaded: loaded (/usr/lib/systemd/system/vnstat.service; disabled; vendor preset: disabled)
   Active: failed (Result: start-limit) since 二 2018-07-03 14:46:59 CST; 3min 37s ago
     Docs: man:vnstatd(1)
           man:vnstat(1)
           man:vnstat.conf(5)
  Process: 9899 ExecStart=/usr/sbin/vnstatd -n (code=exited, status=203/EXEC)
 Main PID: 9899 (code=exited, status=203/EXEC)

7月 03 14:46:59 oracle.server systemd[1]: vnstat.service: main process exited, code=exited, status=203/EXEC
7月 03 14:46:59 oracle.server systemd[1]: Unit vnstat.service entered failed state.
7月 03 14:46:59 oracle.server systemd[1]: vnstat.service failed.
7月 03 14:46:59 oracle.server systemd[1]: vnstat.service holdoff time over, scheduling restart.
7月 03 14:46:59 oracle.server systemd[1]: start request repeated too quickly for vnstat.service
7月 03 14:46:59 oracle.server systemd[1]: Failed to start vnStat network traffic monitor.
7月 03 14:46:59 oracle.server systemd[1]: Unit vnstat.service entered failed state.
7月 03 14:46:59 oracle.server systemd[1]: vnstat.service failed.

发现并没有启动成功,我们可以查一下vnstatd命令的位置,发现上面/usr/sbin/vnstatd这个并不存在,我们建立一个软连接就可以了:

ln -s /usr/local/sbin/vnstatd /usr/sbin/vnstatd

然后启动,再次查询状态:

● vnstat.service - vnStat network traffic monitor
   Loaded: loaded (/usr/lib/systemd/system/vnstat.service; disabled; vendor preset: disabled)
   Active: active (running) since 二 2018-07-03 14:50:44 CST; 3min 6s ago
     Docs: man:vnstatd(1)
           man:vnstat(1)
           man:vnstat.conf(5)
 Main PID: 10126 (vnstatd)
   CGroup: /system.slice/vnstat.service
           └─10126 /usr/sbin/vnstatd -n

7月 03 14:50:44 oracle.server systemd[1]: Started vnStat network traffic monitor.
7月 03 14:50:44 oracle.server systemd[1]: Starting vnStat network traffic monitor...
7月 03 14:50:44 oracle.server vnstatd[10126]: Info: vnStat daemon 1.18 started. (pid:10126 uid:0 gid:0)
7月 03 14:50:44 oracle.server vnstatd[10126]: Info: Monitoring: enp0s3 (1000 Mbit)

不能更新流量统计问题

systemctl status vnstat

Error: Unable to open database "/var/lib/vnstat/eth0" for writing: Permission denied

# 修改目录权限

chown -R vnstat:vnstat /var/lib/vnstat/