您的位置:首页 > 运维架构 > Shell

centos inux 系统的负载与CPU、内存、硬盘、用户数监控shell脚本

2012-07-11 16:49 931 查看
原文:http://www.weiruoyu.cn/?p=369

之前一直有这个想法,网上写的都是抄来抄去的,在这里我转发

hrs219

哥们自己写shell脚本,有注释,比较适合初级人员学习,我在这里重新整理了一下格式转发出来
1.监控cpu负载
#!/bin/bash

IP=`ifconfig eth0 |sed -n '2p'|awk '{print $2}'|cut -f 2 -d ':'`

cpu_num=`grep -c 'model name' /proc/cpuinfo`

load_15=`uptime | awk '{print $NF}'`

average_load=`echo "scale=2;a=$load_15/$cpu_num;if(length(a)==scale(a)) print 0;print a" | bc`

average_int=`echo $average_load | cut -f 1 -d "."`

load_warn=0.70

if

(($average_int > 0));

then

echo "$IP服务器15分钟的系统平均负载为$average_load,超过警戒值1.0,请立即处理!!!"

else

load_now=`expr $average_load \> $load_warn`

if

(($load_now == 1));

then

echo "$IP服务器15分钟的系统平均负载达到 $average_load,超过警戒值0.70,请及时处理。"

else

echo "ok"

fi

fi

2.监控cpu使用率
cpu_idle=`top -b -n 1 |grep Cpu |awk '{print $5}'|cut -f1 -d '.'`

if

(($cpu_idle <20));

then

echo `date`"$IP服务器cpu剩余$cpu_idle%,使用率已经超过80%,请及时处理。" |mail -s "cpu over 80%" 7545300@qq.com

fi

测试脚本
cpu_idle=`top -b -n 1 |grep Cpu |awk '{print $5}'|cut -f1 -d '.'`

if

(($cpu_idle <20));

then

echo `date`"$IP服务器cpu剩余$cpu_idle%,使用率已经超过80%,请及时处理。" |mail -s "cpu over 80%" 54545300@qq.com

else

echo "ok test"

fi

详细参考:http://www.weiruoyu.cn/?p=369
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  cpu 内存 监控