~优化保守模式守护进程

This commit is contained in:
juewuy
2026-02-14 20:30:53 +08:00
parent 0589bc7881
commit f5394120e1

View File

@@ -1,13 +1,16 @@
[ -z "$CRASHDIR" ] && CRASHDIR=$(cd "$(dirname "$0")"/.. && pwd) [ -z "$CRASHDIR" ] && CRASHDIR=$(cd "$(dirname "$0")"/.. && pwd)
PIDFILE="/tmp/ShellCrash/$1.pid" PIDFILE="/tmp/ShellCrash/$1.pid"
LOCKDIR="/tmp/ShellCrash/start_$1.lock"
[ -f "$CRASHDIR"/.start_error ] && [ ! -f /tmp/ShellCrash/crash_start_time ] && exit 1 #当启动失败后禁止开机自启动 [ -f "$CRASHDIR"/.start_error ] && [ ! -f /tmp/ShellCrash/crash_start_time ] && exit 1 #当启动失败后禁止开机自启动
mkdir "$LOCKDIR" 2>/dev/null || exit 1
if [ -f "$PIDFILE" ]; then if [ -f "$PIDFILE" ]; then
PID="$(cat "$PIDFILE")" PID="$(cat "$PIDFILE")"
if [ -n "$PID" ] && [ "$PID" -eq "$PID" ] 2>/dev/null; then if [ -n "$PID" ] && [ "$PID" -eq "$PID" ] 2>/dev/null; then
if kill -0 "$PID" 2>/dev/null || [ -d "/proc/$PID" ]; then if kill -0 "$PID" 2>/dev/null || [ -d "/proc/$PID" ]; then
rm -d "$LOCKDIR" 2>/dev/null
return 0 return 0
fi fi
else else
@@ -16,13 +19,12 @@ if [ -f "$PIDFILE" ]; then
fi fi
#如果没有进程则拉起 #如果没有进程则拉起
LOCKDIR="/tmp/ShellCrash/start_$1.lock" if [ "$1" = "shellcrash" ]; then
if mkdir "$LOCKDIR" 2>/dev/null; then "$CRASHDIR"/start.sh start
if [ "$1" = "shellcrash" ]; then else
"$CRASHDIR"/start.sh start [ -f "$CRASHDIR/starts/start_legacy.sh" ] && . "$CRASHDIR/starts/start_legacy.sh"
else killall bot_tg.sh 2>/dev/null
[ -f "$CRASHDIR/starts/start_legacy.sh" ] && . "$CRASHDIR/starts/start_legacy.sh" start_legacy "$CRASHDIR/menus/bot_tg.sh" "$1"
start_legacy "$CRASHDIR/menus/bot_tg.sh" "$1"
fi
rm -d "$LOCKDIR" 2>/dev/null
fi fi
rm -d "$LOCKDIR" 2>/dev/null