首页 > Web开发 > 详细

Shell脚本监控服务器在线状态和邮件报警的方法

时间:2016-01-29 18:01:27      阅读:163      评论:0      收藏:0      [点我收藏+]

对于服务器来说在线率很重要,出现问题要能及时解决,但系统管理员不能一直守在电脑旁边,通过脚本监控网站出现问题及时通过mail通知管理员,如果是139邮箱还可免费手机短信通知。
注:通过系统直接发送mail容易被拦截,可使用mail连接第三方smtp发送邮件。

shell脚本实现代码:

复制代码 代码如下:

#!/bin/bash
#set -x
while true
do
 list=(www.jb51.net s.jb51.net)
 mail=jmj@jb51.net
 date=$(date -d "today" +"%Y-%m-%d-%H:%M:%S")
 i=0
 id=${#list[*]}
 while [ $i -lt $id ]
 do
  if ping -c1 ${list[$i]} >/dev/null
  then
   echo  $date:服务器${list[$i]}能ping通。
  else
   if curl -m 10  ${list[$i]} > /dev/null
   then
    echo  $date:服务器${list[$i]} ping不通,能打开网页。
   else
    echo  "您好,据系统监测服务器${list[$i]}不能访问且ping不通,请及时处理!故障发生时间:$date"|mail -s "服务器${list[$i]}不能连接! 故障发生时间:$date" $mail
    until
     date=$(date -d "today" +"%Y-%m-%d-%H:%M:%S")
     ping -c1 ${list[$i]} >/dev/null && echo "恭喜!服务器${list[$i]}已恢复正常,恢复时间:$date"|mail -s "服务器${list[$i]}已恢复正常! 恢复时间:$date" $mail
    do
     sleep 5
    done
   fi
  fi
  let i++
 done
 sleep 60
done

Shell脚本监控服务器在线状态和邮件报警的方法

原文:http://www.jb51.net/article/48053.htm

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!