首先我们需要检查apache是否以启动,这里我们用到的说nmap命令,Linux默认情况下是没有安装nmap命令的。
那么我们需要安装下nmap,安装的命令很简单:yum -y install nmap
mnap -sT 192.168.1.1这条命令是检测服务器启动了什么服务,192.168.1.1这个为你的服务器的ip地址。
apache是属于tcp协议的一种,我们先截取出有关tcp协议的服务,再截取http。
如果apache是启动的那么这条命令最后的截取结果为open,如果不启动那么截取的就为close。
以下为脚本的内容:
open=$(mnap -sT 192.168.1.1 |grep tcp | grep http |awk '{print $2}')
if [ "$open" == "open" ]
then
如果是启动的就把apache启动的消息输出到apache启动日志文件中,正常情况下,应该是发送一份邮件告诉管理员apache是启动的,这里我就简化了。
echo "$date The http is OK !!!">>/tmp/httpd_acc.log
else
如果是关闭的就启动下apache服务,并把启动成功的消息输出到apache关闭的日志文件中。
/var/rc.d/init.d/httpd restart $>/dev/null
echo "$date The httpd restart success !!! ">>/tmp/httpd_err.log
fi
#在正常情况下,每个服务器每15分钟必须检查一下apache是否启动,那么我们可以与crontab定时任务命令结合起来执行这个脚本。