From 9b7c5e658c7221eff61e4213cc21f0d9dba72a3b Mon Sep 17 00:00:00 2001 From: juewuy Date: Wed, 21 Jan 2026 19:05:40 +0800 Subject: [PATCH] =?UTF-8?q?~=E4=BC=98=E5=8C=96=E6=B5=8B=E8=AF=95=E7=9B=B8?= =?UTF-8?q?=E5=85=B3=E5=91=BD=E4=BB=A4=20~=E4=BC=98=E5=8C=96=E7=89=88?= =?UTF-8?q?=E6=9C=AC=E5=9B=9E=E9=80=80=E5=8A=9F=E8=83=BD=EF=BC=8C=E7=8E=B0?= =?UTF-8?q?=E5=9C=A8=E6=94=AF=E6=8C=81=E5=9B=9E=E9=80=80=E5=88=B0=E8=BF=91?= =?UTF-8?q?=E6=9C=9Ftags=20~=E4=BF=AE=E5=A4=8D=E4=BF=9D=E5=AE=88=E6=A8=A1?= =?UTF-8?q?=E5=BC=8F=E5=81=9C=E6=AD=A2=E6=9C=8D=E5=8A=A1=E6=97=B6=E6=9C=AA?= =?UTF-8?q?=E6=AD=A3=E7=A1=AE=E6=B3=A8=E9=94=80=E9=98=B2=E7=81=AB=E5=A2=99?= =?UTF-8?q?=E7=9A=84bug=20~=E4=BF=AE=E5=A4=8D=E5=B0=8F=E7=B1=B3=E8=AE=BE?= =?UTF-8?q?=E5=A4=87=E5=9B=A0=E5=AE=89=E8=A3=85=E5=9C=A8u=E7=9B=98?= =?UTF-8?q?=E7=AD=89=E5=AF=BC=E8=87=B4=E8=87=AA=E5=90=AF=E5=91=BD=E4=BB=A4?= =?UTF-8?q?=E4=B8=8D=E6=AD=A3=E7=A1=AE=E7=9A=84bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit # Conflicts: # scripts/menu.sh # scripts/menus/9_upgrade.sh --- scripts/start.sh | 13 +++++++------ scripts/starts/snapshot_init.sh | 12 ++++++++---- 2 files changed, 15 insertions(+), 10 deletions(-) diff --git a/scripts/start.sh b/scripts/start.sh index e046040f..e9ee6403 100644 --- a/scripts/start.sh +++ b/scripts/start.sh @@ -72,9 +72,10 @@ stop) cronset '运行时每' cronset '流媒体预解析' #多种方式结束进程 - if [ -f "$TMPDIR/shellcrash.pid" ];then - kill -TERM "$(cat "$TMPDIR/shellcrash.pid")" - rm -f "$TMPDIR/shellcrash.pid" + if [ -f "$TMPDIR/shellcrash.pid" ];then + kill -TERM "$(cat "$TMPDIR/shellcrash.pid")" + rm -f "$TMPDIR/shellcrash.pid" + stop_firewall elif [ "$USER" = "root" ] && grep -q 'systemd' /proc/1/comm; then systemctl stop shellcrash.service >/dev/null 2>&1 elif [ -f /etc/rc.common ] && grep -q 'procd' /proc/1/comm; then @@ -85,7 +86,7 @@ stop) elif rc-status -r >/dev/null 2>&1; then rc-service shellcrash stop >/dev/null 2>&1 else - stop_firewall #清理路由策略 + stop_firewall fi killall CrashCore 2>/dev/null #清理缓存目录 @@ -115,8 +116,8 @@ debug) else sed -i "s/log-level: info/log-level: $2/" "$TMPDIR"/config.yaml fi - [ "$3" = flash ] && dir=$CRASHDIR || dir=$TMPDIR - $COMMAND >${dir}/debug.log 2>&1 & + [ "$3" = flash ] && dir="$CRASHDIR" || dir="$TMPDIR" + $COMMAND >"$dir"/debug.log 2>&1 & sleep 2 logger "已运行debug模式!如需停止,请使用重启/停止服务功能!" 33 else diff --git a/scripts/starts/snapshot_init.sh b/scripts/starts/snapshot_init.sh index 0d566b34..f578cfd3 100644 --- a/scripts/starts/snapshot_init.sh +++ b/scripts/starts/snapshot_init.sh @@ -1,9 +1,14 @@ #!/bin/sh # Copyright (C) Juewuy -CRASHDIR="$(uci get firewall.ShellCrash.path | sed 's/\/starts\/snapshot_init.sh//')" - -[ -f "$CRASHDIR"/configs/ShellCrash.cfg ] && . "$CRASHDIR"/configs/ShellCrash.cfg +CRASHDIR="$(uci get firewall.ShellCrash.path | sed 's/\/starts.*//')" +i=0 +while [ ! -f "$CRASHDIR/configs/ShellCrash.cfg" ]; do + [ $i -gt 20 ] && exit 1 + i=$((i + 1)) + sleep 3 +done +. "$CRASHDIR"/configs/ShellCrash.cfg autoSSH(){ #自动开启SSH @@ -78,7 +83,6 @@ init(){ while ! ip a| grep -q lan; do sleep 10 done - sleep 20 autoSSH #软固化功能 auto_clean #自动清理 [ -s "$CRASHDIR"/start.sh ] && auto_start