linux如何让一个程序崩溃后自动重启

https://jingyan.baidu.com/article/39810a23a124dfb636fda612.html

编写一个shell脚本,轮询监控应用的进程,如果出现崩溃进程不在的情况下,自动启动应用程序

touch restart.sh(新建一个重启脚本)

linux如何让一个程序崩溃后自动重启
chmod 777 restart.sh (赋予权限,默认-rw-rw-r–没有可执行权限,不赋予权限脚本运行不了)

执行玩chmod之后,权限已经改变-rwxrwxrwx

linux如何让一个程序崩溃后自动重启
vi restart.sh(编辑文件)

循环每隔10秒查看下应用程序进程是否存在,不存在则启动应用,存在则睡眠10秒继续检测

#!/bin/sh

while true

do

ps -ef | grep “填入你自己的程序名” | grep -v “grep”

if [ “$?” -eq 1 ]

then

./run.sh #启动应用,修改成自己的启动应用脚本或命令

echo “process has been restarted!”

else

echo “process already started!”

fi

sleep 10

done

linux如何让一个程序崩溃后自动重启
./restart.sh (启动脚本),启动完成之后,则可以看到每隔10秒打印一次“process already started!”,这个表示应用程序在运行不需要重启

linux如何让一个程序崩溃后自动重启
为了演示程序崩溃的情况,手动杀掉应用程序的进程

linux如何让一个程序崩溃后自动重启
杀完进程之后,再看刚刚启动的监控脚本打印日志情况,从图中可以看到,“process has been restarted!”,表示已经重启应用成功了。不确定的还可以自己去看下应用程序是否在运行

linux如何让一个程序崩溃后自动重启步骤阅读
END
注意事项
上面演示的是直接启动脚本,在退出会话的时候会停止,要使用nohup的方式启动监控脚本

  • 3
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值