feat: 加 Patchbay 安装入口
Patchbay 是网页编辑 mihomo 配置的工具,独立仓库、独立发布链路。这里只做 入口:拉它的 install.sh 下来执行,装、更新、卸载的逻辑都在那边,不复制过来。 - 菜单 p 项和 patchbay 子命令,二级菜单为安装/更新、检查更新、服务控制、卸载 - 不直接 bash <(curl ...):先下到临时文件过一遍 bash -n 再以 root 执行。 上游推坏了、或者中间设备塞回来一个门户登录页,那条写法会直接跑掉 - MIHOMO_MIRROR / MIHOMO_BIN / MIHOMO_CONF_DIR 原样透传(名字本来就相同), -y 跟 ASSUME_YES 走,--purge 跟 PURGE 走,check 的退出码按 0/10/1 解读 - 状态显示只读 version.txt 和 systemd 单元状态,版本和服务定义归它自己管 - 卸载 mihomo 不连带删除它,和 Sub-Store 同样处理 顺手把 Sub-Store 的服务控制菜单抽成通用的 unit_ctl_menu,两边共用,行为没变。
This commit is contained in:
@@ -15,7 +15,7 @@
|
||||
| 脚本缓存 | `/var/lib/mihomo-up/` |
|
||||
| 内核备份 | `/var/backups/mihomo/` |
|
||||
|
||||
(可选装的 Sub-Store 另在 `/opt/sub-store`,卸载 mihomo 不会动它)
|
||||
(可选装的 Sub-Store 在 `/opt/sub-store`、Patchbay 在 `/opt/patchbay`,卸载 mihomo 都不会动它们)
|
||||
|
||||
除此之外它不碰你系统里的任何东西。
|
||||
|
||||
@@ -24,6 +24,7 @@
|
||||
- Linux + bash 4 以上
|
||||
- 依赖命令:`curl`、`gzip`、`install`、`awk`、`sed`(一般发行版自带)
|
||||
- 只有选装 Sub-Store 时才额外需要 `node` 和 `unzip`;脚本会检测并给出安装命令,不替你装
|
||||
- 选装 Patchbay 需要 `tar` 和 `unzip`;它的运行时(bun)由它自己的安装脚本装一份私有副本,不碰系统
|
||||
- 安装、升级、修改配置、卸载都需要 **root**。非 root 也能进菜单,会先提醒一句
|
||||
- 没有 systemd 的机器(容器等)也能用:脚本跳过服务相关步骤,只管内核和配置,你自己 `mihomo -d /etc/mihomo` 启动起来
|
||||
|
||||
@@ -54,6 +55,7 @@ sudo ./mihomo-up.sh rollback # 内核回滚到上一个备份
|
||||
sudo ./mihomo-up.sh uninstall # 卸载,会逐项问你配置和备份要不要删除
|
||||
sudo ./mihomo-up.sh shortcut # 只安装 / 刷新 mihomo-up 快捷命令
|
||||
sudo ./mihomo-up.sh substore # 安装 / 更新 Sub-Store(订阅聚合,可选)
|
||||
sudo ./mihomo-up.sh patchbay # 安装 / 更新 Patchbay(网页编辑配置,可选)
|
||||
```
|
||||
|
||||
## 菜单里有什么
|
||||
@@ -65,6 +67,7 @@ sudo ./mihomo-up.sh substore # 安装 / 更新 Sub-Store(订阅聚合,
|
||||
7. 配置管理 生成配置 / 改端口 / 看面板密钥 / 校验 / 手动编辑
|
||||
8. 服务控制 启动 / 停止 / 重启 / 状态 / 日志 / 开机自启
|
||||
9. Sub-Store 订阅聚合,可选,见下
|
||||
p. Patchbay 网页编辑配置,可选,见下
|
||||
u. 卸载 mihomo
|
||||
```
|
||||
|
||||
@@ -173,6 +176,23 @@ ssh -L 3001:127.0.0.1:3001 用户名@你的服务器
|
||||
|
||||
卸载 mihomo **不会**连带删除 Sub-Store——你的订阅数据在里面。要删就走菜单第 9 项里的卸载。
|
||||
|
||||
## Patchbay(可选)
|
||||
|
||||
[Patchbay](https://git.im0o.top/im0o/mihomo-patchbay) 是编辑 mihomo 配置的网页工具:在浏览器里改配置、校验、直接重载内核,省得 SSH 上去用 vi。菜单 `p` 项安装,它同样是独立服务,**不进一键安装**。
|
||||
|
||||
**这里只是个入口**:装、更新、卸载全由 Patchbay 自己的 `install.sh` 完成,本脚本只负责把它拉下来执行(先过一遍 `bash -n`,语法不过就不以 root 运行),并把 `--mirror`、`-y` 和 `MIHOMO_BIN` / `MIHOMO_CONF_DIR` 原样传过去。所以 Patchbay 的版本、服务定义、环境变量都归它自己管,出问题去它的仓库反馈。
|
||||
|
||||
**前提**是 mihomo 已经装好、且配置里开了管理接口(`external-controller`)——Patchbay 靠管理接口读线路和触发重载。没开的话它会拒绝安装并告诉你先跑一遍配置向导。
|
||||
|
||||
装完只监听 `127.0.0.1:7580`,访问方式和访问令牌在安装结束时打印出来,用法和 Sub-Store 一样是 SSH 隧道:
|
||||
|
||||
```bash
|
||||
ssh -N -L 7580:127.0.0.1:7580 用户名@你的服务器
|
||||
# 然后本机浏览器打开 http://127.0.0.1:7580,填脚本给你的访问令牌
|
||||
```
|
||||
|
||||
卸载 mihomo 同样**不会**连带删除 Patchbay,要删走菜单 `p` → 卸载。
|
||||
|
||||
## 升级和回滚
|
||||
|
||||
`update` 只更换内核二进制,不动你的配置和服务定义。替换前有两道闸门,任一不过就中止:
|
||||
@@ -269,6 +289,9 @@ sudo ./mihomo-up.sh install --mirror https://ghfast.top/
|
||||
| 仓库 raw 地址(快捷命令拉取源) | `MIHOMO_UP_URL` |
|
||||
| `/opt/sub-store`(Sub-Store 目录) | `SUBSTORE_DIR` |
|
||||
| `sub-store`(Sub-Store 服务名) | `SUBSTORE_SERVICE` |
|
||||
| `/opt/patchbay`(Patchbay 目录) | `PATCHBAY_PREFIX` |
|
||||
| `patchbay`(Patchbay 服务名) | `PATCHBAY_SERVICE` |
|
||||
| Patchbay 仓库 raw 地址(安装脚本拉取源) | `PATCHBAY_INSTALL_URL` |
|
||||
|
||||
内核备份最多保留 3 份(脚本内常量 `KEEP=3`)。配置备份不自动清理,积累多了自己删除 `config.yaml.bak-*`。
|
||||
|
||||
|
||||
Reference in New Issue
Block a user