Files
ShellCrash/scripts/shellcrash.procd
juewuy 5c8cfd7b71 v1.8.8c
~重写本机代理部分逻辑,修复相关死循环bug
~安装时现在默认会自动清理多余的旧目录
~现在在linux设备上默认使用保守模式而不是systemd
~singbox默认启用sniff以匹配规则,但不会覆写域名
~修复使用systemd启动时,无法正确配置防火墙的bug
~修复在线生成时导入包含@符号的链接时,无法正确转换的bug
~修复singbox对ipv6-tun模式的支持
2024-01-24 16:09:10 +08:00

34 lines
821 B
Bash

#!/bin/sh /etc/rc.common
START=99
SERVICE_DAEMONIZE=1
SERVICE_WRITE_PID=1
USE_PROCD=1
#获取目录
CRASHDIR=$(cat /etc/profile | grep CRASHDIR | awk -F "\"" '{print $2}')
[ -z "$CRASHDIR" ] && CRASHDIR=$(cat ~/.bashrc | grep CRASHDIR | awk -F "\"" '{print $2}')
source ${CRASHDIR}/configs/command.env #加载启动命令和启动目录
start_service() {
#检测必须文件
$CRASHDIR/start.sh bfstart
if [ "$?" = "0" ];then
#使用procd创建clash后台进程
procd_open_instance
procd_set_param user root
procd_set_param respawn
procd_set_param command $COMMAND
procd_set_param stderr 0
procd_set_param stdout 0
procd_close_instance
#启动结束执行
$CRASHDIR/start.sh afstart
fi
}
stop_service(){
procd_close_instance
$CRASHDIR/start.sh stop_firewall
$CRASHDIR/start.sh unset_proxy
}