下载软件
#cd /home/tools/
#wget http://soft.vpser.net/status/vnstat/vnstat_php_frontend-1.5.1.tar.gz
#http://download.chinaunix.net/download.php?id=22078&ResourceID=11145 (需要打开浏览器,下载软件包,然后上传到服务器上)
安装
#cd /home/tools/
#tar zxvf vnstat-1.4.tar.gz
#cd vnstat-1.4
#make
#make install //如果64位平台上编译的话用make 64bit命令
#cd ..
#tar zxvf vnstat_php_frontend-1.5.1.tar.gz
#mv vnstat_php_frontend-1.5.1 $root/vnstat //将程序移动到网站的根目录
#cd $root/vnstat/
编辑配置文件
#vim config.php
$language = ‘nl‘; 修改成 $language = ‘en‘;
$iface_list = array(‘eth0‘, ‘sixxs‘); 修改成 $iface_list = array(‘eth0‘, ‘eth1‘);
$iface_title[‘sixxs‘] = ‘SixXS IPv6‘; 注释掉,在上面添加 $iface_title[‘eth1‘] = ‘Internal‘;
$data_dir = ‘./dumps‘; 修改成 $data_dir = ‘/var/lib/vnstat‘;
$graph_format=‘svg‘; 修改成 $graph_format=‘png’;
$iface_title[‘eth0‘] = ‘Internal’; 修改成 $iface_title[‘eth0‘] = ‘想显示的名称’;
$iface_title[‘eth1‘] = ‘Internal’; 修改成 $iface_title[‘eth0‘] = ‘想显示的名称’;
建立数据库
# /usr/bin/vnstat -u -i eth0
Error:
Unable to read database "/var/lib/vnstat/eth0".
New database generated.
You have mail in /var/spool/mail/root
Error message= NS_ERROR_FAILURE: Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsIStringBundle.GetStringFromName]
URL= XStringBundle
Line Number= 21
# /usr/bin/vnstat -u -i eth0
如果有多个网卡按照上面方法进行建立数据库
增加计划任务
#流流量量监监控控
*/5 * * * * vnstat -u -i eth0
*/5 * * * * vnstat --dumpdb -i eth0 >/var/lib/vnstat/vnstat_dump_eth0
//第一行为安装时自动指定的.
//第二行是为了更新eth0的数据后,dump出来一个文件,给 php访问接口访问.
注意:有时候采用上面的收集办法,无法采集到数据,可以采用下面的办法
#cat > /var/lib/vnstat/dump.sh<<EOF
vnstat -u -i eth0
vnstat --dumpdb -i eth0 >/var/lib/vnstat/vnstat_dump_eth0
EOF
再执行:
#crontab -e 加入执行命令
#*/5 * * * * sh /var/lib/vnstat/dump.sh
再删除vnstat原有的cron
#rm /etc/cron.d/vnstat
页面展示
http://域名或者ip/vnstat/
命令行操作
#vnstat -tr -i eth0 // 查看五秒内网卡的平均流量
#vnstat -i eth0 -w //查看一周内的流量
其他测试网络带宽工具
一.添加yum源方便安装bmon
# rpm -Uhv http://apt.sw.be/redhat/el5/en/x ...1.el5.rf.x86_64.rpm
# yum install bmon
- bandwidth monitor
可以在 shell 下监控网络流量的状况( 具有动态效果 )
RX: 流进
TX: 流出
安装成功后输入bmon命令后,选择eth0按g,按d。查看效果如如下:
#bmon
linux下面测试网络带宽 - 程序之家 - 对程序要刻薄
以基本的方式查看:
#bmon -o ascii -p eth0
再介绍两个查看网络状况的软件:
1、 # yum install nload
linux下面测试网络带宽 - 程序之家 - 对程序要刻薄
这张图分为两部分
上半部分是:Incoming也就是进入网卡的流量,
下半部分是:Outgoing,也就是从这块网卡出去的流量,
每部分都有当前流量(Curr),平均流量(Avg),最小流量(Min),最大流量(Max),总和流量(Ttl)这几个部分,
看起来还是蛮直观的。
#nload --help 查看具体用法
2.iftop
# yum install iftop
# iftop -i eth0
linux下面测试网络带宽 - 程序之家 - 对程序要刻薄
TX:发送流量
RX:接收流量
TOTAL:总流量
Cumm:运行iftop到目前时间的总流量
peak:流量峰值
rates:分别表示过去 2s 10s 40s 的平均流量
#iftop -i eth0 -n 就可以看到eth0网卡的流量状况:
iftop 相关命令 :
监控eth1的网卡的流量
# iftop -i eth1
以位元组(bytes)为单位显示流量(预设是位元bits):
$ iftop -B
直接显示IP, 不进行DNS反解:
$ iftop -n
直接显示连接埠编号, 不显示服务名称:
$ iftop -N
显示某个网段进出封包流量
$ iftop -F 192.168.1.0/24 or 192.168.1.0/255.255.255.0
其他参数可下 iftop -h 看说明.
进入iftop画面时, 可按 p 切换是否显示连接埠, n 切换显示IP或主机的domain name, N切换显
示连接埠代号或名称, p暂停显示, b切换是否显示长条, B切换计算几秒内的平均流量, 其他按键
可以按h观看说明.