写一个shell脚本巡检
时间: 2023-06-16 08:07:34 浏览: 95
巡检脚本的目的是为了检查服务器或者应用程序的状态,确保它们正常运行。以下是一个简单的shell脚本巡检,它可以检查指定的服务器是否在线和指定的服务是否启动。
```
#!/bin/bash
# 定义要检查的服务器IP地址和端口号
SERVER_IP="192.168.0.1"
SERVER_PORT="80"
# 检查服务器是否在线
ping -c 1 $SERVER_IP > /dev/null
if [ $? -ne 0 ]; then
echo "服务器 $SERVER_IP 不在线"
exit 1
else
echo "服务器 $SERVER_IP 在线"
fi
# 检查指定端口是否开放
nc -z -w 5 $SERVER_IP $SERVER_PORT > /dev/null
if [ $? -ne 0 ]; then
echo "端口 $SERVER_PORT 未开放"
exit 1
else
echo "端口 $SERVER_PORT 已开放"
fi
# 检查指定服务是否启动
SERVICE_NAME="nginx"
SERVICE_STATUS=$(systemctl is-active $SERVICE_NAME)
if [ "$SERVICE_STATUS" != "active" ]; then
echo "服务 $SERVICE_NAME 未启动"
exit 1
else
echo "服务 $SERVICE_NAME 已启动"
fi
exit 0
```
以上脚本中,我们首先定义了要检查的服务器IP地址和端口号,然后使用 `ping` 命令检查服务器是否在线,使用 `nc` 命令检查指定端口是否开放,使用 `systemctl` 命令检查指定服务是否启动。如果某个检查失败,脚本将输出相应的错误信息,并退出。如果所有检查都通过,则脚本输出成功信息,并以0状态码退出。
阅读全文