周红伟:【OpenClaw】升级指南
升级步骤
1. 检查当前状态和更新
首先,你需要确认当前系统的状态。运行这条命令:
openclaw status
这条命令会显示当前安装的版本信息。如果输出中出现了"Update: available"的提示,那就意味着有新版可以升级了。
2. 停止 Gateway 服务
直接运行更新命令往往会遇到EBUSY错误,这是因为相关进程还在运行中占用了文件。正确的做法是先停止服务:
openclaw gateway stop
执行后,系统会停止"Scheduled Task: OpenClaw Gateway"这个计划任务。
3. 使用 npm 全局更新
这里有个小技巧:OpenClaw自带的内置更新命令有时候会因为文件锁定而失败。经验表明,使用npm手动更新通常更加可靠:
npm update -g openclaw
需要注意的是,命令不是npm update -g openclaw@latest,那样反而会导致参数错误。正确的语法就是npm update -g
4. 重新启动 Gateway
更新完成后,需要重新启动服务:
openclaw gateway restart
话说回来,如果重启后仍然遇到问题,可能需要考虑以下几个方案:关闭所有可能占用文件的程序、重启计算机后再尝试,或者清理临时文件——特别是%APPDATA%\npm\node_modules目录下的.openclaw-*文件夹。
5. 验证升级
最后一步是确认升级是否成功:
openclaw status
检查输出的版本号,确认已经更新到最新版本。
常见问题
EBUSY 错误
症状:npm error code EBUSY, EPERM: operation not permitted
原因分析:这种情况通常是因为OpenClaw进程还在运行,其核心文件被占用导致无法替换。
解决方案:先执行openclaw gateway stop,确保没有其他OpenClaw相关进程在后台运行。如果仍然失败,重启系统后再进行升级往往能解决问题。
遗留文件未删除
症状:npm warn cleanup Failed to remove some directories
原因探究:某些DLL或.node文件被系统或其他程序锁定,导致清理失败。
处理建议:这种警告通常不影响正常使用,只是视觉上的提醒。可以尝试手动删除这些文件,或者等待系统释放后自动清理。必要时候,重启系统是最彻底的清理方式。
回滚方法
如果需要回滚到之前的特定版本,比如2026.3.7版本,可以使用:
npm install -g openclaw@2026.3.7
后续建议
升级完成后,强烈建议运行一次安全检查:
openclaw security audit
这会帮助你发现潜在的安全问题,特别是那些与DingTalk配置相关的警告,记得根据提示及时修复。