Linux 进程自动重连

在做东西时候,有时候代码有些小bug,进程会崩掉。所以进程需要一个自动重启功能。

1.实现进程自动重连。

#!/bin/sh
kill -KILL `ps -aux | grep 'Face_Web' | awk '{print $2}'` > /dev/null 2>&1
while [ 1 ]; do
    appexe1=`ps -A | grep 'Face_Web' | wc -l`
    if [ $appexe1 -eq 0 ]; then
                kill -KILL `ps -aux | grep 'Face_Web' | awk '{print $2}'` > /dev/null 2>&1
                echo "Start Face_Web"
                /home/ubuntu/workspace/Server_Face/build/Face_Web &
    fi
    sleep 2
done

有些没有看懂,不过没关系不影响我使用,将Face_Web换成需要重连进程并填入进程所在路径,放在开机自启动就行了。

2.开机自启动

一般都是放在rc.local中来实现的,这种方法是开机后系统运行时候所执行的,其用户权限是root。所以进程生成文件都是root用户下的,一般用户需要sudo才能对这些文件进行操作。还有一种是修改用户目录下的.profile文件,这种方式进程生成文件都是改用户所有。但是这种方式是每次切换到该用户自启动脚本都会被执行,为了偷懒(实际是不会修改profile文件)我放在了rc.local中。

cd /home/nvidia/worksapce/DarkWeb/cwf/chang_ip
echo "nvidia" | sudo -S ./set_net
cd /home/nvidia/workspace/Server_Face_2/build/
sh runBat.sh
exit 0

在exit 0 上面加上脚本所在目录并运行脚本。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值