时间:2018年12月31日 | 作者 : liuhui | 分类 : FRP教程 | 浏览: 11802次 | 评论 0 人
阿里云限量代金券 | 此广告位出租25元/月 |
在运行frps或frpc的时候常常会遇到进程意外停止,下面博士分享几个linux脚本来保持frps或frpc的进程不被退出。
脚本一:
新建一个脚本文件shouhufrps.sh放入frp程序目录
vi shouhufrps.sh
将下面的脚本代码复制进去
#!/bin/sh #添加本地执行路径 export LD_LIBRARY_PATH=./ while true; do #启动一个循环,定时检查进程是否存在 server=`ps aux | grep frps | grep -v grep` if [ ! "$server" ]; then #如果不存在就重新启动 systemctl restart frps #启动后沉睡10s sleep 10 fi #每次循环沉睡10s sleep 5 done
如果你要改为守护其他程序,只要修改server字符串内的frps为你要守护的程序名称即可,then后面换行可以加echo输出,如果要在后面执行脚本请赋予被执行脚本的权限chmod +x
新建一个Session
screen -S shouhufrps
执行守护脚本
sh ./shouhufrps.sh
将Session保持在后台
Ctrl + A D
脚本二:
这是另一个简化后的脚本
#!/bin/bash if ps -ef|grep "frp"|egrep -v grep >/dev/null then echo ok! else echo $(date +%T%n%F)" Restart Frps Services " >> restartfrps.log systemctl restart frps fi
将上方代码保存为frpkeeper.sh并将下面代码加进crontab定时任务,即可每分钟执行一次检测
* * * * * sh /root/frpkeeper.sh
脚本三:
这个脚本是博士在网友“小Q主人”那里获得的,这个linux脚本是windows进程守护脚本设计思路编写的。
将下面的代码保存为frps.sh放入frp程序目录
cd `dirname $0` start='./frps -c ./frps.ini' while : do echo [`date`]restart\"$start\" > /root/restartfrps.log $start done
使用方法
screen -S frps sh ./frps.sh
博士再打开了一个shell,kill掉了frps进程,发现这个脚本起作用了马上又恢复了frps进程,效果还是可以的。
推荐您阅读更多有关于“”的文章
Powered By Z-Blogphp
分享:
支付宝
微信