会计考友 发表于 2012-8-4 14:06:19

几个常用的Linux监控脚本

最近时不时有互联网的朋友问我关于服务器监控方面的问题,问常用的服务器监控除了用开源软件,比如:cacti,nagios监控外是否可以自己写shell脚本呢?根据自己的需求写出的shell脚本更能满足需求,更能细化主机监控的全面性。
下面是我常用的几个主机监控的脚本,大家可以根据自己的情况再进行修改,希望能给大家一点帮助。
1、查看主机网卡流量
#!/bin/bash
#network
#Mike.Xu
while : ; do
time=‘date +%m“-”%d“ ”%k“:”%M’
day=‘date +%m“-”%d’
rx_before=‘ifconfig eth0|sed -n “8”p|awk ’{print $2}‘|cut -c7-’
tx_before=‘ifconfig eth0|sed -n “8”p|awk ’{print $6}‘|cut -c7-’
sleep 2
rx_after=‘ifconfig eth0|sed -n “8”p|awk ’{print $2}‘|cut -c7-’
tx_after=‘ifconfig eth0|sed -n “8”p|awk ’{print $6}‘|cut -c7-’
rx_result=$[(rx_after-rx_before)/256]
tx_result=$[(tx_after-tx_before)/256]
echo “$time Now_In_Speed: ”$rx_result“kbps Now_OUt_Speed: ”$tx_result“kbps”
sleep 2
done
2、系统状况监控
#!/bin/sh
#systemstat.sh
#Mike.Xu
IP=192.168.1.227
top -n 2| grep “Cpu” 》》。/temp/cpu.txt
free -m | grep “Mem” 》》 。/temp/mem.txt
df -k | grep “sda1” 》》 。/temp/drive_sda1.txt
#df -k | grep sda2 》》 。/temp/drive_sda2.txt
df -k | grep “/mnt/storage_0” 》》 。/temp/mnt_storage_0.txt
df -k | grep “/mnt/storage_pic” 》》 。/temp/mnt_storage_pic.txt
time=`date +%m“。”%d“ ”%k“:”%M`
connect=`netstat -na | grep “219.238.148.30:80” | wc -l`
echo “$time $connect” 》》 。/temp/connect_count.txt
3、监控主机的磁盘空间,当使用空间超过90%就通过发mail来发警告#!/bin/bash
#monitor available disk space
SPACE=‘df | sed -n ’/ \ / $ / p‘ | gawk ’{print $5}‘ | sed ’s/%//‘
if [ $SPACE -ge 90 ]
then
xxx@xxx.com
fi
页: [1]
查看完整版本: 几个常用的Linux监控脚本