RedHat上安装MRTG监控本机网卡流量
系统环境:redhat9.0
必备软件:
系统必须已经安装以下软件,这些软件都可以在光盘里找的到:
gd-1.8.4-11
gd-devel-1.8.4-11
libpng-1.2.2-16
libpng-devel-1.2.2-16
libpng10-1.0.13-8
libpng10-devel-1.0.13-8
perl-5.8.0-88
zlib-1.1.4-8
zlib-devel-1.1.4-8
httpd-manual-2.0.40-21
httpd-2.0.40-21)
gcc-3.2.2-5
net-snmp-5.06-17
mrtg-2.9.29.tar.gz
MRTG是工作在SNMP协议上的,你必须安装SNMP才能启动MRTG来观测你的网络,我就是没有配置好NET-SNMP,所以MRTG显示出来的会没有图形的,我就是犯了这样的错误。有的网络上要求装UCD-SNMP,我的redhat 9.0默认装的是net-snmp,所以我就没有用ucd-snmp,没有试过,不过我想应该是大同小异吧。
1.首先来安装配置net-snmp
- #rpm –ivh net-snmp-5.06-17 #一般redhat9.0会默认安装上去的。
- #vi /etc/snmp/snmpd.conf #安装完以后,配置/etc/snmp/snmpd.conf文件,使其能配合mrtg工作。
转到90行把下面的#号去掉
- #view mib2 included .iso.org.dod.internet.mgmt.mib-2 fc #在89行
把下面的语句#在62行
- access notConfigGroup "" any noauth exact systemview none none
改为:
- access notConfigGroup "" any noauth exact mib2 none none
转到397行
- rocommunity mrtg
记得哟,这是的community是mrtg,而不是常见的public,这个以后要用到记着要,我就是用了很多次public才没有得到图形,现在想起,笨死了。可能在ucd-snmp中默认的是public,没有用过。Ro的意思吗read only,也是听人家说的(还有朋友问,没有这一行怎么办,嘿嘿,加上去吗!竟还问这样的问题!)。
ok,改完以后,就可以启动snmpd服务,SNMP配置也到此完成了。
- #/etc/rc.d/init.d/snmpd start
2.安装mrtg
- tar zvxf mrtg-2.9.29.tar.gz
- cd mrtg-2.9.29
- ./configure --prefix=/usr/local/mrtg \
- --with-gd=/usr/include \
- --with-gd-lib=/usr/lib \
- --with-gd-inc=/usr/include \
- --with-png=/usr/include \
- --with-zlib=/usr/include &&
- make &&
- make install
3.配置mrtg
- #mkdir /var/www/html/mrtg 这里/var/www/html是www的默认主页地址,大家可能跟我不同
- #cp images/* /var/www/html/mrtg images/*是在解压缩mrtg-2.9.29.tar.gz的mrtg-2.9.29文件夹里
- #/usr/local/mrtg/bin/cfgmaker --output=/var/www/html/mrtg/mrtg.cfg \
- >;mrtg@192.168.0.1 #这里是创建一个mrtg.cfg文件
上面请特别注意:在 mrtg@192.168.0.1这一行呢,mrtg 是有其意义的(在 snmp 这个通讯服务里面的预设搜寻的一个代码,默认的可能是public,这就是刚才要查看/etc/snmp/snmpd.conf里的原因了),所以,如果你的主机的动态 DNS 名称为 your.domain.name 则你就『一定』要写成 mrtg@your.domain.name 才行!千万不要弄错了!已经有很多网友遇到这个问题!
在/var/www/html/mrtg目录下,并且监控192.168.0.1的地址,本例这个地址是本机的网卡IP地址
#vi /var/www/html/mrtg/mrtg.cfg #修改mrtg.cfg文件,主要修改以下内容,以符合你的实际情况
- WorkDir: /var/www/html/mrtg
- Options[_]: growright, bits
- Language:GB2312
这个要注意的一点是他们前边不要有空格,否则会有什么” ERROR: Line 8 ( WorkDir: /var/www/html/mrtg) in CFG file (mrtg) does not make sense”的错误。
下面接着:
- #/usr/local/mrtg/bin/mrtg /var/www/html/mrtg/mrtg.cfg
这个需要运行3次,前两次都会报错,不用去理会他,第3次就应该没有错误了,不过,若是有问题的话,就需要修改mrtg.cfg,再执行直到没有错误发生为止。
错误大概是这样的:
- Rateup WARNING: /usr/local/mrtg2/bin/rateup could not read the primary log file for localhost
- Rateup WARNING: /usr/local/mrtg2/bin/rateup The backup log file for localhost was invalid as well
- Rateup WARNING: /usr/local/mrtg2/bin/rateup Can't remove localhost.old updating log file
- Rateup WARNING: /usr/local/mrtg2/bin/rateup Can't rename localhost.log to localhost.old updating log file
4.制作首页index.html:
- #/usr/local/mrtg/bin/indexmaker \
- >;--output=/var/www/html/mrtg/index.html \
- >;--title=服务器流量统计 \
- >;/var/www/html/mrtg/mrtg.cfg
上面这个程序indexmaker是在制作首页。会自动地输出一个index.html的文件中。如果说你以后修改了这个文件(比如增加对CPU,硬盘等的侦测,要再重新生成一次,否则图面会出不来的.)
5.设定每5分钟执行一次
使用手工运行mrtg并不能定时产生适当的统计信息,因此***还是定时自动运行mrtg来生 成统计信息,默认为五分钟运行一次。
作为root身份crontab -e进入编辑状态,添加内容 如下:
- */5 * * * * root /usr/local/mrtg/bin/mrtg /var/www/html/mrtg/mrtg.cfg
ok!到此为止,配置完毕,记得一定要重新启动snmp和httpd服务!
访问:http://192.168.0.1/mrtg/
就能看到网络流量图了
【编辑推荐】