install: автозапуск демона и rc.d-симлинк, бутстрап без nano-подсказки

- В конце install.sh демон запускается автоматически (NO_START=1 чтобы выключить)
- Если в /opt/etc есть rc.d, ставим симлинк автозапуска при ребуте
- Подсказка в браузер сразу с реальным IP LAN
- pip install --target=lib теперь с --upgrade — без WARNING при повторной установке
- bootstrap.sh не упоминает nano (его нет в Entware), и не дублирует подсказку
This commit is contained in:
Андрей Бобырев
2026-04-26 00:30:39 +03:00
parent af1981cf0c
commit 60a216deac
2 changed files with 25 additions and 14 deletions

View File

@@ -33,5 +33,3 @@ echo "==> Запуск install.sh"
cd / cd /
rm -rf "$TMP" rm -rf "$TMP"
echo ""
echo "Готово. Дальше: nano /opt/share/keenetic_ssh-web/.env && /opt/etc/init.d/S99keenetic-ssh-web start"

View File

@@ -58,8 +58,8 @@ else
fi fi
rm -rf lib rm -rf lib
mkdir -p lib mkdir -p lib
"$PY" -m pip install -q --target=lib --upgrade pip 2>/dev/null || true "$PY" -m pip install -q --upgrade --target=lib pip 2>/dev/null || true
"$PY" -m pip install -q --target=lib -r requirements.txt "$PY" -m pip install -q --upgrade --target=lib -r requirements.txt
fi fi
INIT="/opt/etc/init.d/S99keenetic-ssh-web" INIT="/opt/etc/init.d/S99keenetic-ssh-web"
@@ -125,20 +125,33 @@ sed "s|@INST@|$INST|g" "$TMP_INIT" > "$INIT"
rm -f "$TMP_INIT" rm -f "$TMP_INIT"
chmod +x "$INIT" chmod +x "$INIT"
# Автозапуск демона (можно отключить: NO_START=1 ./install.sh)
if [ "${NO_START:-0}" != "1" ]; then
echo "==> Запуск $INIT"
"$INIT" restart || echo "(не удалось стартовать; посмотрите лог: tail /opt/var/log/keenetic-ssh-web.log)"
fi
# Автозапуск после перезагрузки, если в Entware есть rc.d
if [ -d /opt/etc/rc.d ] && [ ! -e /opt/etc/rc.d/S99keenetic-ssh-web ]; then
ln -sf "$INIT" /opt/etc/rc.d/S99keenetic-ssh-web 2>/dev/null && \
echo "==> Автозапуск: /opt/etc/rc.d/S99keenetic-ssh-web → $INIT"
fi
# Узнаём IP роутера для подсказки в браузер
ROUTER_IP="$(ip -4 addr show 2>/dev/null | awk '/inet 192\.168\./ {print $2; exit}' | cut -d/ -f1)"
[ -z "$ROUTER_IP" ] && ROUTER_IP="IP_РОУТЕРА"
echo "" echo ""
echo "============================================================" echo "============================================================"
echo "Готово. Установлено в: $INST" echo "Готово. Установлено в: $INST"
echo "Init-скрипт: $INIT" echo "Init-скрипт: $INIT"
echo "Лог: /opt/var/log/keenetic-ssh-web.log"
echo "" echo ""
echo "Дальше:" echo "Откройте в браузере: http://${ROUTER_IP}:2001"
echo " 1) (по желанию) vi $INST/.env" echo "Логин/пароль — как у веб-админки роутера (Keenetic)."
echo " ROUTER_HOST=http://127.0.0.1 ROUTER_LOGIN=admin"
echo " WEB_PASSWORD=... PORT=2001"
echo " ALLOWED_IPS=192.168.1.100"
echo " 2) $INIT start"
echo " 3) Браузер: http://IP_РОУТЕРА:2001"
echo " Логин/пароль — от веб-админки роутера (Keenetic)."
echo "" echo ""
echo "Автозапуск после перезагрузки (если есть rc.d):" echo "Полезные команды:"
echo " ln -sf $INIT /opt/etc/rc.d/S99keenetic-ssh-web" echo " $INIT {start|stop|restart}"
echo " vi $INST/.env (правка конфигурации)"
echo " tail -f /opt/var/log/keenetic-ssh-web.log"
echo "============================================================" echo "============================================================"