一:安装网络流量监视[默认5分钟采集一次] 
切换到超级用户: 
sudo -sH 
安装软件: 
apt-get install apache2 
apt-get install mrtg 
apt-get install snmpd 
编辑snmpd: 
vim /etc/snmp/snmpd.conf 
查找到类似的行,修改为如下所示:(仅仅修改屏蔽或放开) 
# sec.name source community 
# com2sec paranoid default public # kommentieren 
com2sec readonly default public # <- auskommentieren 
#com2sec readwrite default private 
重启snmpd服务: 
/etc/init.d/snmpd restart 
重新生成mrtg的配置文件: 
cfgmaker public@localhost > /etc/mrtg.cfg 
(注意)如果仅仅监视一个IP地址采用如下命令: 
cfgmaker public@192.168.0.1 >> /etc/mrtg.cfg 
生成mrtg的主页: 
indexmaker /etc/mrtg.cfg > /var/www/mrtg/index.html 
访问: 
http://localhost/mrtg/
二安装CPU负载监视[默认5分钟采集一次] 
切换到超级用户: 
sudo -sH 
安装软件: 
apt-get install sysstat 
建立CPU脚本: 
mkdir /opt/mrtg 
vim /opt/mrtg/mrtg.cpu 
#!/bin/bash 
cpuusr=`/usr/bin/sar -u 1 3 | grep Average | awk '{print $3}'` 
cpusys=`/usr/bin/sar -u 1 3 | grep Average | awk '{print $5}'` 
UPtime=`/usr/bin/uptime | awk '{print $3""$4""$5}'` 
echo $cpuusr 
echo $cpusys 
echo $UPtime 
hostname 
使脚本可以执行: 
chmod +755 /opt/mrtg/mrtg.cpu 
修改 /etc/mrtg.cfg 在文件最后加入cpu项目 
Target[cpu]: `/opt/mrtg/mrtg.cpu` 
MaxBytes[cpu]: 100 
Options[cpu]: gauge, nopercent, growright 
YLegend[cpu]: CPU loading (%) 
ShortLegend[cpu]: % 
LegendO[cpu]:   CPU us; 
LegendI[cpu]:   CPU sy; 
Title[cpu]: CPU Loading 
PageTop[cpu]: <H1>CPU Loading</H1> 
重新生成索引页面: 
indexmaker /etc/mrtg.cfg > /var/www/mrtg/index.html 
 
三安装WWW连接数监视[默认5分钟采集一次] 
切换到超级用户: 
sudo -sH 
建立WWW脚本: 
mkdir /opt/mrtg 
vim /opt/mrtg/mrtg.www 
#!/bin/bash 
all=`netstat -a | grep www|awk '{print $5}'|sort | wc -l|awk '{print$1 - 1}'` 
user=`netstat -a | grep www|awk '{print $5}'|cut -d":" -f1|sort| uniq |wc -l | awk '{print $1 - 1}'` 
if [ "$all" = "-1" ]; then 
echo 0 
else 
echo $all 
fi 
if [ "$user" = "-1" ]; then 
echo 0 
else 
echo $user 
fi 
UPtime=`/usr/bin/uptime | awk '{print $3 " " $4 " " $5}'` 
echo $UPtime 
hostname 
使脚本可以执行: 
chmod +755 /opt/mrtg/mrtg.www 
修改 /etc/mrtg.cfg 在文件最后加入www项目 
Target[www]: `/opt/mrtg/mrtg.www` 
MaxBytes[www]: 500 
Options[www]: nopercent, growright 
YLegend[www]: Online Users 
ShortLegend[www]: % 
LegendI[www]:   Connect : 
LegendO[www]:   Online : 
Title[www]: WWW Connect 
PageTop[www]: <H1> WWW Connect </H1> 
重新生成索引页面: 
indexmaker /etc/mrtg.cfg > /var/www/mrtg/index.html 
 
 
四安装内存使用监视[默认5分钟采集一次] 
切换到超级用户: 
sudo -sH 
建立RAM脚本: 
mkdir /opt/mrtg 
vim /opt/mrtg/mrtg.ram 
#!/bin/bash 
# run this script to check the mem usage. 
totalmem=`/usr/bin/free |grep Mem |awk '{print $2}'` 
usedmem=`/usr/bin/free |grep Mem |awk '{print $3}'` 
UPtime=`/usr/bin/uptime | awk '{print $3""$4""$5}'` 
echo $totalmem 
echo $usedmem 
echo $UPtime 
hostname 
使脚本可以执行: 
chmod +755 /opt/mrtg/mrtg.ram 
修改 /etc/mrtg.cfg 在文件最后加入ram项目 
Target[ram]: `/opt/mrtg/mrtg.ram` 
#Unscaled[ram]: dwym 
MaxBytes[ram]: 2048000 
Title[ram]:Memory 
ShortLegend[ram]: & 
kmg[ram]:kB,MB 
kilo[ram]:1024 
YLegend[ram]:   Memory Usage : 
Legend1[ram]:   Total Memory : 
Legend2[ram]:   Used Memory : 
LegendI[ram]:   Total Memory : 
LegendO[ram]:   Used Memory : 
Options[ram]: growright,gauge,nopercent 
PageTop[ram]:<H1>Memory</H1> 
重新生成索引页面: 
indexmaker /etc/mrtg.cfg > /var/www/mrtg/index.html 
 
 
五安装FTP连接数监视[默认5分钟采集一次] 
切换到超级用户: 
sudo -sH 
建立FTP脚本: 
mkdir /opt/mrtg 
vim /opt/mrtg/mrtg.ftp 
#!/bin/bash 
all=`netstat -a | grep ftp|awk '{print $5}'|sort | wc -l|awk '{print$1 - 1}'` 
user=`netstat -a | grep ftp|awk '{print $5}'|cut -d":" -f1|sort| uniq |wc -l | awk '{print $1 - 1}'` 
if [ "$all" = "-1" ]; then 
echo 0 
else 
echo $all 
fi 
if [ "$user" = "-1" ]; then 
echo 0 
else 
echo $user 
fi 
UPtime=`/usr/bin/uptime | awk '{print $3 " " $4 " " $5}'` 
echo $UPtime 
hostname 
使脚本可以执行: 
chmod +755 /opt/mrtg/mrtg.ftp 
修改 /etc/mrtg.cfg 在文件最后加入ftp项目 
Target[ftp]: `/opt/mrtg/mrtg.ftp` 
MaxBytes[ftp]: 500 
Options[ftp]: nopercent, growright 
YLegend[ftp]: Online Users 
ShortLegend[ftp]: % 
LegendI[ftp]:   Connect : 
LegendO[ftp]:   Online : 
Title[ftp]: FTP Connect 
PageTop[ftp]: <H1> FTP Connect </H1> 
重新生成索引页面: 
indexmaker /etc/mrtg.cfg > /var/www/mrtg/index.html 
 
六安装CPU温度监视[默认5分钟采集一次] 
切换到超级用户: 
sudo -sH 
安装软件: 
apt-get install mbmon 
建立CPU温度脚本: 
mkdir /opt/mrtg 
vim /opt/mrtg/mrtg.temp 
#!/bin/bash 
/usr/bin/mbmon -c 1 -i -T 4 -u -n 
exit 0 
使脚本可以执行: 
chmod +755 /opt/mrtg/mrtg.temp 
修改 /etc/mrtg.cfg 在文件最后加入cpu项目 
Target[temp]: `/opt/mrtg/mrtg.temp` 
MaxBytes[temp]: 100 
Title[temp]: CPU Temperature 
PageTop[temp]: <H1>CPU Temperature</H1> 
Options[temp]: gauge,absolute,unknaszero,growright 
YLegend[temp]: Temperature(C) 
ShortLegend[temp]: (C) 
Legend1[temp]: CPU Temperature 
Legend2[temp]: M/B Temperature 
LegendI[temp]: CPU Temp. 
LegendO[temp]: M/B Temp. 
重新生成索引页面: 
indexmaker /etc/mrtg.cfg > /var/www/mrtg/index.html 
 
七硬盘读写监视[默认5分钟采集一次] 
切换到超级用户: 
sudo -sH 
建立硬盘读写脚本: 
mkdir /opt/mrtg 
vim /opt/mrtg/mrtg.disk 
#!/bin/bash 
hd=sda 
disk=/dev/$hd 
UPtime=`/usr/bin/uptime |awk '{print $3""$4""$5}'` 
KBread_sec=`iostat -x $disk|grep $hd |awk '{print 8$}'` 
KBwrite_sec=`iostat -x $disk|grep $hd |awk '{print 9$}'` 
echo $KBread_sec 
echo $KBwrite_sec 
echo $UPtime 
hostname 
使脚本可以执行: 
chmod +755 /opt/mrtg/mrtg.disk 
修改 /etc/mrtg.cfg 在文件最后加入硬盘读写 
Target[disk]: `/opt/mrtg/mrtg.disk` 
Title[disk]: Disk HDA I/O Utilization Report 
#Unscaled[disk]: dwym 
MaxBytes[disk]: 10240000 
PageTop[disk]: <H1>Disk I/O Utilization Report</H1> 
kmg[disk]: KB,MB,GB 
LegendI[disk]: Disk I/O KBread/sec 
LegendO[disk]: Disk I/O KBwrite/sec 
Legend1[disk]: Disk I/O KBread/sec 
Legend2[disk]: Disk I/O KBwrite/sec 
YLegend[disk]: Megabytes 
ShortLegend[disk]: & 
Options[disk]: growright,gauge,nopercent 
重新生成索引页面: 
indexmaker /etc/mrtg.cfg > /var/www/mrtg/index.html 
 
八:磁盘使用 
切换到超级用户: 
sudo -sH 
建立磁盘使用脚本: 
mkdir /opt/mrtg 
vim /opt/mrtg/mrtg.df 
#!/usr/bin/perl 
foreach $filesystem (`df -kl | grep -v "Filesystem"`) 
{ 
@df = split(/\s+/,$filesystem); 
$total += $df[1]; 
$usage += $df[2]; 
} 
print "$total\n"; 
print "$usage\n"; 
hostname 
使脚本可以执行: 
chmod +755 /opt/mrtg/mrtg.df 
修改 /etc/mrtg.cfg 在文件最后加入 
Target[disk]: `/opt/mrtg/mrtg.df` 
Title[disk]: Disk Space 
Unscaled[disk]: dwym 
MaxBytes[disk]: 465247550 
kmg[disk]: KB,MB,GB 
LegendI[disk]: Total Disk Space 
LegendO[disk]: Used Disk Space 
Legend1[disk]: Total Disk Space 
Legend2[disk]: Used Disk Space 
YLegend[disk]: Megabytes 
ShortLegend[disk]: & 
Options[disk]: growright,nopercent 
PageTop[disk]: <H1>Disk Space</H1> 
重新生成索引页面: 
indexmaker /etc/mrtg.cfg > /var/www/mrtg/index.html 
九:交换分区 
切换到超级用户: 
sudo -sH 
建立交换分区脚本: 
mkdir /opt/mrtg 
vim /opt/mrtg/mrtg.swap 
#!/bin/bash 
# This script to monitor the swap usage. 
totalswap=`/usr/bin/free |grep Swap |awk '{print $2}'` 
usedswap=`/usr/bin/free |grep Swap |awk '{print $3}'` 
echo "$totalswap" 
echo "$usedswap" 
使脚本可以执行: 
chmod +755 /opt/mrtg/mrtg.swap 
修改 /etc/mrtg.cfg 在文件最后加入 
Target[swap]: `/opt/mrtg/mrtg.swap` 
MaxBytes[swap]: 2048000 
Title[swap]:Memory State of Server 
ShortLegend[swap]: & 
kmg[swap]:kB,MB 
kilo[swap]:1024 
YLegend[swap]: Swap Usage 
Legend1[swap]: Total Swap 
Legend2[swap]: Used Swap 
LegendI[swap]: Total Swap 
LegendO[swap]: Used Swap 
Options[swap]: growright,gauge,nopercent 
PageTop[swap]:<H1>Swap</H1> 
重新生成索引页面: 
indexmaker /etc/mrtg.cfg > /var/www/mrtg/index.html 
* Target[裝置名稱]: 
o Target[adj.idv.tw_2]: 2: public@192.168.1.2 
上面是一般的用法,其中半括號內的是裝置的名稱,同一個裝置的各參數中,這個名稱要一致! 
o Target[adj.idv.tw_3]:`/usr/local/apache/htdocs/mrtg/cpu/mrtg.cpu` 
後面接的是一個自訂的加掛的可執行檔案,這個檔案執行之後,會顯示四個數據,這樣就可以繪圖了!在繪製非 MRTG 程式的預設咚咚中,這個是最常使用的方法了! 
* MaxBytes[裝置名稱]: 
o MaxBytes[adj.idv.tw_2]: 1250000 
後面的數字代表資料監測時,最大的傳送速率,使用 bytes,所以 10Mbps 則為 1.25MBytes,大約是 1250000
Bytes。這個數值程式會自動判斷啦!不過你也可以自己修改,用到這個數字的時候是在你的圖表下方,每一個說明後面的(xx%)時用到的。 
o MaxBytes[adj.idv.tw_3]: 100 
如果你的資料並不是 Bytes 時,例如監測 CPU 負載率時,那這個數值就需要改變啦! 
* Options[裝置名稱]: 
o Options[adj.idv.tw_2]: growright, bits (用在網路流量中) 
o Options[adj.idv.tw_3]: growright, nopercent, gauge (用在 CPU 負載中) 
growright:將資料隨時間變化的順序以右而左繪圖; 
bits:資料單位為 bits; 
nopercent:在圖下方的說明文字中,不顯示百分比; 
gauge:圖表的上限固定!
最终效果:
 
 出处:http://www.phpd.cn/show-56-1.html