From efecfe49c2e2539d591cdc1d892dea8a997ee54a Mon Sep 17 00:00:00 2001 From: xyzmean <163691714+xyzmean@users.noreply.github.com> Date: Sat, 3 Oct 2026 12:00:53 +0300 Subject: [PATCH] =?UTF-8?q?Steer:=20=D0=B0=D0=B2=D1=82=D0=BE=D0=BF=D0=B5?= =?UTF-8?q?=D1=80=D0=B5=D0=B7=D0=B0=D0=BF=D1=83=D1=81=D0=BA=20=D0=BF=D0=B5?= =?UTF-8?q?=D1=80=D0=B5=D0=B6=D0=B8=D0=B2=D0=B0=D0=B5=D1=82=20=D1=83=D0=B4?= =?UTF-8?q?=D0=B0=D0=BB=D0=B5=D0=BD=D0=B8=D0=B5=20=D0=B8=20=D0=BD=D0=BE?= =?UTF-8?q?=D0=B2=D1=83=D1=8E=20=D1=83=D1=81=D1=82=D0=B0=D0=BD=D0=BE=D0=B2?= =?UTF-8?q?=D0=BA=D1=83=20=D0=BF=D0=B0=D0=BD=D0=B5=D0=BB=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Строка cron автоперезапуска зовёт backend.sh, поэтому удаление панели снимает её вместе с остальными строками панели: без панели ей нечего звать. Раньше строка звала init-скрипт steer напрямую и переживала удаление, а теперь после новой установки панели автоперезапуск молча пропадал, хотя Steer и его настройки остались. Выбранный режим теперь хранится в /etc/zm-steer/autorestart. Установщик панели через steer_action sync возвращает строку, если Steer стоит, а строки нет. «Выкл.» файл убирает, удаление Steer — вместе с каталогом. Committed-by: agy-cli (autonomous, run #96) --- ZapretManager_LuCI.sh | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/ZapretManager_LuCI.sh b/ZapretManager_LuCI.sh index 80e6bb7..01e46f7 100644 --- a/ZapretManager_LuCI.sh +++ b/ZapretManager_LuCI.sh @@ -8555,10 +8555,14 @@ _st_cron_restart() { stl_restart } +ST_CRON_KEEP="$ST_DIR/autorestart" _st_cron_refresh() { local cur cur="$(_st_cron_get)" - [ -n "$cur" ] || return 0 + if [ -z "$cur" ]; then + [ -s "$ST_CRON_KEEP" ] && _st_installed && _st_cron_set "$(cat "$ST_CRON_KEEP")" >/dev/null 2>&1 + return 0 + fi grep -F "$ST_CRON_TAG" "$CRON_FILE" 2>/dev/null | grep -qF "$ST_CRON_CMD" && return 0 _st_cron_set "$cur" >/dev/null 2>&1 return 0 @@ -8594,6 +8598,7 @@ _st_cron_set() { touch "$CRON_FILE" sed -i "\\|$ST_CRON_TAG|d" "$CRON_FILE" [ -n "$spec" ] && echo "$spec $ST_CRON_CMD $ST_CRON_TAG" >> "$CRON_FILE" + if [ -n "$spec" ] && [ -d "$ST_DIR" ]; then echo "$1" > "$ST_CRON_KEEP"; else rm -f "$ST_CRON_KEEP"; fi /etc/init.d/cron enable >/dev/null 2>&1 /etc/init.d/cron restart >/dev/null 2>&1 printf '{"ok":true}\n'