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

邮件报警shell脚本

2014-06-26 16:42 447 查看
温馨提示 首先要安装postfix 或者 sendmail 等邮件服务器

1.Apache

#!/bin/bash
#apache.sh

nc -w2 localhost 80
if[ $? -ne 0 ]
then
echo "apache is down,please check" | mail user1@g.cn -s "apache is down"
/usr/local/apache2/bin/apachectl restart
fi


说明:
nc 是到一个端口里面去 -w2 表示进去2秒 如果端口开放2秒后自动退出 如果没有开放直接退出
$? 是上一步执行的结果 0表示执行成功,端口是开启的 非0 表示失败,端口是关闭的
如果80端口关闭了 发送邮件并且重启服务

2.硬盘配额

#!/bin/bash
#disk.sh

num=`df |awk 'NR==3{print int($4)}'`
if [ $num -ge 20]
then
echo "disk space is ${num}%, now >20%" | mail user1@g.cn -s "disk space >22%"
fi


说明:
num=`df |awk 'NR==3{print int($4)}'` 把df执行结果的第3行第4列的值转成int 赋值给 num
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: