判断apache是否启动可以通过多种方式
ps:
[root@bogon ~]# ps -aux | grep httpd
netstat:
[root@bogon ~]# netstat -tlun
查看80端口的占用情况,但是当apache假死或者其他程序占用80端口的时候这样的判断就不一定准确。推荐使用另一种方式判断,那就是nmap扫描工具。
安装nmap:
[root@bogon ~]# yum install nmap [root@bogon ~]# nmap -sT 192.168.8.8 #扫描192.168.8.8的TCP服务
下面进行脚本编写:
#!/bin/bash web=`nmap -sT 192.168.8.8 | grep tcp | grep http | awk '{print $2}'` if [ "$web" == "open" ] then echo "$(date) The apache is ok !!!!">>/lee/apachelog/apache_acc.log else service httpd restart &>>/lee/apachelog/apache_err.log echo "$(date)The apache is restarting!!!">>/lee/apachelog/apache_err.log fi
赋予执行权限:
[root@bogon sh]# chmod 755 apache.sh
加入计划任务(略)。