1.要求:
| 写一个脚本,判断本机的80端口(假如服务为httpd)是否开启着,如果开启着什么都不做, 如果发现端口不存在,那么重启一下httpd服务,并发邮件通知你自己。 脚本写好后,可以每一分钟执行一次,也可以写一个死循环的脚本,30s检测一次。 |
2.脚本答案:
| [root@liang 2018-06-19]# cat httpd.sh #!/bin/bash Mail=lilde123456@163.com while true do Num=`netstat -lntup|grep -w "80"|wc -l` if [ "$Num" -eq 0 ];then /usr/bin/systemctl restart httpd > /dev/null 2>&1 Date=`date +%F-%T` echo "${Date} systemctl restart httpd"|mail -s "httpd" ${M ail} fi sleep 30 done |
3.测试脚本
3.1停止http [root@liang 2018-06-19]# systemctl stop httpd 3.2运行脚本 [root@liang 2018-06-19]# bash httpd.sh
|
本文介绍了一个用于监控80端口状态并自动重启httpd服务的Shell脚本。当检测到80端口未开启时,脚本会自动重启httpd服务并发送邮件通知。此外,还提供了详细的测试步骤。

483

被折叠的 条评论
为什么被折叠?



