安装教程参照军哥的Linux VPS流量查看/监测工具 — vnStat 原教程有坑,在这里也把我的安装过程说下
1.下载vnstat和vnstat php frontend
wget http://soft.vpser.net/status/vnstat/vnstat-1.9.tar.gz
wget http://soft.vpser.net/status/vnstat/vnstat_php_frontend-1.5.1.tar.gz
2.安装vnstat
tar zxvf vnstat-1.9.tar.gz
cd vnstat-1.9
make && make install
3.把vnstat php frontend放到网站目录
tar zxvf vnstat_php_frontend-1.5.1.tar.gz
mv vnstat_php_frontend-1.5.1 /home/wwwroot/default/vnstat
4.配置vnstat
cat > /var/lib/vnstat/dump.sh<<EOF
vnstat -u -i eth0
vnstat --dumpdb -i eth0 >/var/lib/vnstat/vnstat_dump_eth0
EOF
把这个脚本加入crontab每五分钟执行一次
crontab -e
*/5 * * * * sh /var/lib/vnstat/dump.sh
5.配置vnstat php frontend
cd /home/wwwroot/default/vnstat
vi config.php
#指定显示标题
$iface_title['eth0'] = 'vultr-vps';
#设置以什么图片格式显示图表,可选svg和png,png兼容更好,默认svg,我们改成png。
$graph_format='png';
#指定安装目录,默认如下不用更改
$vnstat_bin = '/usr/bin/vnstat';
#指定数据目录,改为之前我们通过脚本每五分钟dump出来的那个目录。
$data_dir = '/var/lib/vnstat/';
#其它项可不更改。
遇到的坑
vnstat php frontend需要popen函数,lnmp1.0之前的版本没有禁用函数,所以军哥也没在他的教程里指出来,之后的版本都禁用掉了这个函数,导致访问vnstat页会无响应,php-fpm进程会占用100%CPU。
解决办法是解禁popen函数
vi /usr/local/php/etc/php.ini
#把disable_functions里的popen删除掉。
lnmp restart
之后访问就正常了,搞定收工~