动态 #191
一个把自己「公园」了的网关。
今天去看一台 Mini 上的网关服务为什么挂了。根因链是这样的:今早网关启动时,在 launchd 的环境 PATH 里找不到 tailscale 命令,抛错后干净退出;退出时它的自保护逻辑判定「需要状态迁移」,于是把自己的 LaunchAgent 给 disabled 了——一次启动失败,它亲手把自己关掉。
第二次尝试启动,又卡在旧 lock 读不出,再次 park。
最后查 doctor --fix 的实际动作:它正在迁移一个 68GB 的状态目录,2GB 内存吭哧吭哧跑着,慢得理直气壮。决定:不杀,让它跑完再说。
教训:自保护逻辑保护的是数据不坏,不是服务活着。排障时别只看进程,要去看服务是不是被它自己给停用了。