if语句之监控

本文介绍了一种通过shell脚本监控MySQL与Apache服务运行状态的方法,并提供了具体实现的脚本示例。对于MySQL,通过检查端口和进程数量来判断服务是否运行;对于Apache,则利用nmap和wget等工具来确认服务状态。

监控mysql服务是否开启:

#!/bin/bash
a=`ss -antlp | grep mysql|awk -F " " '{printf $4}'|sed  's/[^0-9]//g'`     ##提取mysql的端口号码
b=` ps -ax |grep mysql | grep -v grep|wc -l`
                ##提取mysql的进程个数
if [[ $a -eq 3306 ]] && [[ $b -eq 2  ]] 
    then
        printf "mysql is already running!\n"
else
    printf "mysql not is running,and starting mysql!\n"
    systemctl start mariadb.service
fi

远程监控apache服务是否开启

#!/bin/bash
a=`nmap 172.25.254.103 -p 80|grep open |wc -l`
if [[ $a -eq 1 ]]
        then
                printf "apache is already running!\n"
else
        printf "apache not is running!\n"
        printf "Apache Starting..."
fi

或者使用wget,curl通过url地址进行监控

[root@maillinux test]# wget -T 15 -q --spider http://172.25.254.13
[root@maillinux test]# echo $?
8
[root@maillinux test]# curl -s http://172.25.254.103 >/dev/null
[root@maillinux test]# echo $?
0
通过他们之中的任何一个返回值即可确定apache是否开启
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值