Linux 脚本监控服务停止时发送短信提醒
时间: 2024-03-29 20:37:17 浏览: 11
可以使用 Shell 脚本来监控服务的运行状态,并在服务停止时发送短信提醒。以下是一个简单的示例脚本:
```bash
#!/bin/bash
# 服务名称
service_name="your_service_name"
# 服务启动命令
service_cmd="your_service_start_command"
# 接收短信的手机号
phone_number="your_phone_number"
# 检查服务运行状态
service_status=$(systemctl status $service_name | grep "Active:" | awk '{print $2}')
if [ "$service_status" != "active" ]; then
# 服务已停止,发送短信提醒
echo "Service $service_name has stopped!" | sudo tee /dev/tty0
echo "Sending message to $phone_number ..."
echo "Service $service_name has stopped!" | sudo tee /dev/tty0 | sudo gammu sendsms TEXT $phone_number
echo "Message sent successfully!"
# 启动服务
echo "Starting service $service_name ..."
$service_cmd
echo "Service $service_name started."
else
# 服务正常运行,不需要发送短信提醒
echo "Service $service_name is running."
fi
```
该脚本首先检查服务的运行状态,如果服务已停止,则发送短信提醒,并尝试重新启动服务。如果服务正常运行,则不发送短信提醒。
需要注意的是,该脚本依赖于 gammu 工具来发送短信,因此需要先安装 gammu。另外,需要将该脚本添加到定时任务中,以便定期检查服务的运行状态。