Homebrew Node 升级后 daemon 203/EXEC:用稳定 symlink 修复启动路径
问题/场景:Node 经 Homebrew 升级后,systemd 仍引用旧 Cellar 版本路径导致 daemon 无法启动。前置条件:Linux/macOS + Homebrew 安装 OpenClaw。实施步骤:确认 ExecStart 是否指向 /Cellar/node/<ver>/bin/node → 切换到稳定 /bin/node 软链 → 重启 gateway 并核验。关键命令:openclaw gateway status、openclaw gateway restart。验证:重启后不再出现 203/EXEC,且再次 brew upgrade 后仍可启动。风险:若非 Homebrew 环境,路径替换策略需验证。来源:Issue #20583 + PR #20584。
GITHUBDiscovered 2026-02-19Author mwfj
Prerequisites
- OpenClaw is installed via npm/Homebrew and daemon managed by systemd or equivalent service manager.
- Host has Homebrew Node and recently experienced node version change.
Steps
- Reproduce and capture current failure state with gateway status and service logs (focus on exit 203/EXEC).
- Inspect daemon runtime path and confirm it points to a versioned Cellar path `/Cellar/node/<version>/bin/node`.
- Switch runtime to stable Homebrew symlink (`<brew-prefix>/bin/node`) as recommended by upstream fix #20584.
- Restart gateway and verify healthy boot; then run one smoke chat/tool action.
- After next brew upgrade, re-check startup to confirm fix remains durable.
Commands
openclaw gateway statusopenclaw gateway restartopenclaw helpVerify
Daemon starts successfully after Node upgrade and no longer references removed Cellar version paths.
Caveats
- If your environment is nvm/asdf-managed (not Homebrew), this exact path strategy may not apply(需验证).
- Do not hardcode absolute versioned Node paths into service definitions.
Source attribution
This tip is aggregated from community/public sources and preserved with attribution.
Open original source ↗