Files
ykxmz/_build/rp_wait_log.txt
T
xmz7891 da40f7572c 同步部署脚本智能体的收尾改动 + 恢复被误删的文件
== 部署脚本(另一个智能体的收尾)==

* deploy.sh 默认两个隧道 unit 都 enable:
    主 lanremote-tunnel      quic  + 8 条 + --metrics :20241
    副本 lanremote-tunnel-h2 http2 + 2 条 + --metrics :20242
  --protocol 支持 both(默认)/ quic / http2,非法值退出码 2
* metrics 端口在两个 unit 里都显式钉死 ——
  实测停掉主实例再重启副实例时,副实例会抢 20241,
  于是 watchdog 和所有按端口读指标的脚本全部读错实例
* MTU/MSS 收成单一出处:net-tune.sh 唯一负责 MSS 1360 + 接口 MTU 1400,
  deploy-tune.sh 只管 keepalive + 开机加速并调用 net-tune.sh。
  这样就不存在"谁后跑谁赢"
* 按需重启:程序和 unit 都用 cmp 比对,一样就不落盘、不重启、
  不 daemon-reload(幂等重跑不再打断正在服务的连接)
* 顺手修了一个会咬人的坑:单独用 --port 9090 时原来只改 unit 不改
  config.yml,隧道会回源到 8080,现象是"隧道通了但一访问就 502"
* 域名:不传 --hostname 且 config.yml 里没有 hostname 时明确停下来
  要输入,不猜、不写 config、不启隧道

测试(三套全绿,实测数字):
  _build/test_deploy_sh.sh        110 通过 / 0 失败(Windows 沙箱)
  _build/test_zip_deploy.sh        30 通过 / 0 失败(从发布 zip 解压再跑)
  _build/test_deploy_device.sh     39 通过 / 0 失败(真机 Debian aarch64)
真机那套桩掉了 systemctl/iptables/ip/sysctl/nmcli
(--prefix 只隔离写文件,不隔离命令副作用),
第 8 节专门验证线上零影响:relay/tunnel/h2 全 active、
MTU=1400、MSS 规则数、keepalive 测前测后完全一致。

== 恢复被误删的文件 ==

排查过程中有人用通配符清了 $env:TEMP\tmp.*,而 Git Bash 的 /tmp
正映射到那个 Windows 目录,导致两个被 git 跟踪的文件被删:
  _build/insert_stub_checks.py
  _build/inspect_pathtest.sh
已从 git 恢复。

教训:用通配符删临时文件很危险,尤其是 /tmp 在 Windows 上
映射到共享目录时。改成只删明确列出的文件名。

== 清理 ==

删掉这轮调试产生的临时输出(reg3.txt / td1.txt / td2.txt 等),
不让它们进仓库。
2026-10-07 18:42:21 +08:00

0 lines
0 B
Plaintext