https://www.jianshu.com/p/267ce809c311,
该篇文章说到了ubuntu下crontab的定时任务用法。
现在有个问题,如果服务器挂了怎么办。系统需要自动重启服务器。我们可以通过监听rails服务器的进程号。如果有,就代表服务器正在运行,否则就代码服务器挂了。
步骤1:编写监听rails服务器的脚本checkServer.sh
$(lsof -t -i:3000)是取出rails服务器的进程号
#!/bin/sh
ps -fe|grep $(lsof -t -i:3000) |grep -v grep
if [ $? -ne 0 ]
then
echo "start process....."
# 在这边去写另外一个脚本去重启服务器
else
echo "runing....."
fi
#####
步骤2:把该脚本加入到crontab中
每隔1分钟执行一次脚本。
* * * * * /home/hpd/productions/your_pro_name/checkServer.sh
步骤3:重启crontab
重启:sudo /etc/init.d/cron restart
重新载入配置:sudo /etc/init.d/cron reload
网友评论