trojan icon indicating copy to clipboard operation
trojan copied to clipboard

能不能让Trojan服务自动重启,或者隔一段时间重启一次呢?

Open earth-5G opened this issue 2 years ago • 8 comments

问题是这样的,最近,或者挺长时间的了, trojan会自动死掉,导致翻不出去,一开始以为是vps的问题,就重启vps就好了, 后来有一天,我发现只要重启一下trojan的服务就能搞定,但是用一会儿就又不行了, 但是只要重启了就能搞定,重启服务估计2秒钟都要不了 所以,我想问问能不能搞个trojan服务自动重启,比如2小时自动重启一次!也没啥影响,也能保证顺畅的使用。。。。。。。。

earth-5G avatar Aug 04 '22 13:08 earth-5G

crontab来设置定时重启任务

Jrohy avatar Aug 05 '22 00:08 Jrohy

crontab来设置定时重启任务

https://blog.csdn.net/ycf921244819/article/details/80520217

大佬 听了您说的,我就去搜索了解下,看到这个教程应该还算靠谱,不过我到了这里就不知道该怎么弄了,

Termius_cfbKQyf11j

使用(/)可以指定间隔

如:* */1 * * * 脚本 表示每8小时执行脚本

我该怎么弄,才能让trojan的这个服务隔1个小时重启一次!

还望大佬不吝赐教!万分感谢!

earth-5G avatar Aug 05 '22 09:08 earth-5G

后面加上重启的命令: systemctl restart trojan

谢谢,折腾搞出来了!!!

earth-5G avatar Aug 07 '22 11:08 earth-5G

后面加上重启的命令: systemctl restart trojan

谢谢,折腾搞出来了!!!

请问完整的命令是什么?我这么提示 bash: 1: command not found,这个应该怎么解决? 我是按照你的命令输入的: * */1 * * * systemctl restart trojan

rickartmiriam avatar Aug 16 '22 09:08 rickartmiriam

后面加上重启的命令: systemctl restart trojan

谢谢,折腾搞出来了!!!

请问完整的命令是什么?我这么提示 bash: 1: command not found,这个应该怎么解决? 我是按照你的命令输入的: * */1 * * * systemctl restart trojan

*/45 * * * * systemctl restart trojan

这是我经过多次尝试以后搞出来的,这样就是45分钟重启一次,这是我目前的,非常好!

earth-5G avatar Aug 16 '22 10:08 earth-5G

后面加上重启的命令: systemctl restart trojan

谢谢,折腾搞出来了!!!

请问完整的命令是什么?我这么提示 bash: 1: command not found,这个应该怎么解决? 我是按照你的命令输入的: * */1 * * * systemctl restart trojan

*/45 * * * * systemctl restart trojan

这是我经过多次尝试以后搞出来的,这样就是45分钟重启一次,这是我目前的,非常好!

QQ截图20220816182144

兄弟,帮我看下,哪里有问题?

rickartmiriam avatar Aug 16 '22 10:08 rickartmiriam

后面加上重启的命令: systemctl restart trojan

谢谢,折腾搞出来了!!!

请问完整的命令是什么?我这么提示 bash: 1: command not found,这个应该怎么解决? 我是按照你的命令输入的: * */1 * * * systemctl restart trojan

*/45 * * * * systemctl restart trojan 这是我经过多次尝试以后搞出来的,这样就是45分钟重启一次,这是我目前的,非常好!

QQ截图20220816182144

兄弟,帮我看下,哪里有问题?

参考资料: https://segmentfault.com/a/1190000017991147 https://blog.csdn.net/ycf921244819/article/details/80520217

你按照这个教程 进入以后,输入 crontab -e 进入编辑页面 然后把 */45 * * * * systemctl restart trojan 这个复制进去,如果有别的,你就删掉 然后你 ctrl+X 然后输入y按ctrl+X退出,提示是否保存,按Y,回车,会有提示: crontab: installing new crontab 然后你可以输入 crontab -l 来看一下是不是列出当前用户定时服务内容。 输入 service cron restart 来重启服务,基本都可以了, 我得是Debian10,你可以根据你的系统,搜一下相关教程!

earth-5G avatar Aug 16 '22 12:08 earth-5G

非常感谢,折腾了一个下午,终于搞定了。

rickartmiriam avatar Aug 16 '22 13:08 rickartmiriam

可以使用这个脚本加到计划任务里,检测到trojian无法连接会自动重启,URL xxxx部分换成自己的节点 #!/bin/bash URL="https://xxxxxxxxxxxxxx/static/index.ab2a3fed.css" CODE=curl --connect-timeout 8 -I -L $URL 2>/dev/null |head -1|awk '{print $2}'

[ ! -d "/var/log/trojanlog" ] && mkdir -p /var/log/trojanlog if [[ $CODE -eq 200 ]];then exit else /usr/local/bin/trojan restart && echo "date +%Y%m%d_%H%M 已重启trojan服务" >> /var/log/trojanlog/check-trojan_date +%Y%m%d.log fi

gmingtian avatar Oct 12 '22 10:10 gmingtian

image

gmingtian avatar Oct 12 '22 11:10 gmingtian