# 宝塔 bootstrap 无变更时跳过 bt reload **日期**:2026-06-29 ## 摘要 SSH bootstrap 对接宝塔 API 时,若 `api.json` 无需变更(API 已开、token 已有、中心 IP 已在白名单),**不再写盘、不执行 `/etc/init.d/bt reload`**,避免每 5 分钟重试或重复一键登录时踢掉面板已有会话。 ## 动机 商城新机 `43.138.205.6` 在 Nexus bootstrap 时 `bt reload` 导致 15:32 面板全员掉线;对已配置机器重复 bootstrap 不应 reload。 ## 涉及文件 - `server/infrastructure/btpanel/ssh_bootstrap.py` — `if actions:` 才写 `api.json` + reload;stdout 增加 `reloaded` - `tests/test_btpanel_ssh_bootstrap.py` — 断言远程脚本条件 reload - `docs/design/specs/2026-06-20-btpanel-module-design.md` — 设计说明同步 ## 迁移 / 重启 仅后端;`deploy-production.sh` rsync + Docker `upgrade --skip-git`。 ## 验证 ```bash .venv/bin/pytest tests/test_btpanel_ssh_bootstrap.py -q ``` 生产:对已 bootstrap 完成的子机再触发对接,syslog 不应再出现 `bt reload`(`actions` 为空时)。