一、将一下内存保存到shell脚本中
vi system.sh
#!/bin/bash
hname=`hostname`
today=`date "+%Y-%m-%d %H:%M:%S"`
IP=`ifconfig -a|grep -o -e 'inet [0-9]\{1,3\}.[0-9]\{1,3\}.[0-9]\{1,3\}.[0-9]\{1,3\}'|grep -v "127.0.0"|awk '{print $2}'`
#cpu_idle=`top -b -n 1 | grep Cpu | awk '{print $5}' | cut -f 1 -d "."`
#cpu_idle=`top -b -n 1 | grep Cpu | awk '{print $5}' | cut -f 1 -d "."`
cpu_idle=`top -b -n 1 | grep Cpu | awk '{print $2}'`
total=`vmstat 1 5|awk '{x+=$13;y+=$14}END{print x+y}'`
#average=$(echo "scale=2;$total/5"|bc)
p_mem=`free -m | grep Mem | awk '{print $2}'`
p_mem_used=`free -m | grep Mem | awk '{print $3}'`
p_mem_free=`free -m | grep Mem | awk '{print $4}'`
p_mem_rate=`expr $p_mem_used / $p_mem`
cache_mem_used=`free -m | grep - | awk '{print $3}'`
cache_mem_free=`free -m | grep - | awk '{print $4}'`
swap_used=`free -m | grep Swap | awk '{print $3}'`
hd_used=`df -h |sed -n "8,8p"| awk '{print $3}'`
hd_free=`df -h |sed -n "8,8p"| awk '{print $4}'`
hd_rate=`df -h |sed -n "8,8p"| awk '{print $5}'`
#输出到文件中
cat>>/home/cdh/sys_warning.txt<<EOF
#输出到文件中
echo "**********************************"
echo "当前时间 :[$today]"
echo "主机名 :[$hname]"
echo "本机IP :[$IP]"
echo "**********************************"
echo "cpu使用率 :[${cpu_idle}%]"
echo "**********************************"
echo "已用内存 :[${p_mem_used}MB]"
echo "总内存 :[${p_mem}MB]"
echo "使用率 :[${p_mem_rate}%]"
echo "**********************************"
echo "已用硬盘 :[${hd_used}B]"
echo "剩余硬盘 :[${hd_free}B]"
echo "使用率 :[${hd_rate}]"
echo "**********************************"
#输出到文件中
EOF
#输出到文件中
二、加入任务计划:每1分钟检测一次
# crontab -e
*/1 * * * * /home/cdh/system.sh
# service crond restart
三、发送邮件(测试中)
网友评论