如何实现用Shell脚本监控服务器在线状态和邮件报警-创新互联

本篇内容主要讲解“如何实现用Shell脚本监控服务器在线状态和邮件报警”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何实现用Shell脚本监控服务器在线状态和邮件报警”吧!

成都创新互联服务项目包括襄州网站建设、襄州网站制作、襄州网页制作以及襄州网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,襄州网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到襄州省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!

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

shell脚本实现代码:

代码如下:

#!/bin/bash
#set -x
while true
do
 list=(www.yisu.com 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脚本监控服务器在线状态和邮件报警”有了更深的了解,不妨来实际操作一番吧!这里是创新互联建站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!


本文名称:如何实现用Shell脚本监控服务器在线状态和邮件报警-创新互联
文章源于:http://myzitong.com/article/dcecdo.html