centos安装vnstat监控系统流量
我的vps每个月下来的流量我都不知道,虽然说idc后台面板会有流量统计,但只能每个月末才能看,想随时都知道自己vps每天流量却不行,本来找了个shell图形化监控网络流量的,但画出来的图有问题,所以只能用vnstat+vnstat PHP frontend来对自己vps流量监控.
系统:centos 5.9
需要的软件包:vnstat-1.11.tar.gz
vnstat_php_frontend-1.5.1.tar.gz
1.下载vnstat
wget http://humdi.net/vnstat/vnstat-1.11.tar.gz
wget http://www.sqweek.com/sqweek/files/vnstat_php_frontend-1.5.1.tar.gz
2.安装vnstat
yum -y install gcc* make vixie-cron
tar zxf vnstat-1.11.tar.gz && cd vnstat-1.11
make
make install
3.安装vnstat_php_frontend
tar zxf vnstat_php_frontend-1.5.1.tar.gz
mv vnstat_php_frontend-1.5.1 vnstat
mv vnstat /var/www/vhosts/wwwroot/
cat >/var/lib/vnstat/dump.sh<<EOF
vnstat -u -i eth0
vnstat --dumpdb -i eth0 >/var/lib/vnstat/vnstat_dump_eth0
EOF
chmod +x /var/lib/vnstat/dump.sh
vi /etc/crontab
*/3 * * * * /bin/sh /var/lib/vnstat/dump.sh
service crond restart
使用vnstat守护进程
vnstatd -d
vi /root/.bashrc
alias vnstat="vnstat -i"
运行命令
alias vnstat="vnstat -i"
sh /var/lib/vnstat/dump.sh
这里运行sh /var/lib/vnstat/dump.sh会报没有eth0数据库,所以要再执行一次sh /var/lib/vnstat/dump.sh
4.配置vnstat_php_frontend
vi /var/www/vhosts/wwwroot/vnstat/config.php
<?php error_reporting(E_ALL | E_NOTICE); $locale = 'en_US.UTF-8'; $language = 'en'; $iface_list = array('eth0'); $iface_title['eth0'] = 'Internal'; $vnstat_bin = '/usr/bin/vnstat'; $data_dir = '/var/lib/vnstat/'; $graph_format='png'; define('GRAPH_FONT',dirname(__FILE__).'/VeraBd.ttf'); define('SVG_FONT', 'Verdana'); define('DEFAULT_COLORSCHEME', 'light'); ?>
5.配置vnstat自启动脚本
wget -P /etc/init.d/ http://humdi.net/vnstat/init.d/redhat/vnstat
chmod +x /etc/init.d/vnstat
chkconfig --add vnstat
chkconfig vnstat on
service vnstat restart
6.验证效果
在浏览器上输入http://domain.name/vnstat查看是否成功,如图
如果vnstat_php_frontend不出图的话,请去看这篇文章解决PHP Fatal error: Call to undefined function imagettfbbox,好了,大家都去看看自己服务器每天的流量有多少吧.
评论: