乐于分享
好东西不私藏

OpenClaw维护专项:4个把龙虾养死的姿势

OpenClaw维护专项:4个把龙虾养死的姿势

OpenClaw维护专项:4个把龙虾养死的姿势

【导读】我的龙虾到底是怎么一步步走向崩溃的?没有无缘无故的死机,只有日积月累的作死。这篇不教你救命,只教你避坑——4个把龙虾养死的经典姿势,看看自己有没有中招。


一、上来就Update

特别是云服务器,直接update后,小龙虾养死了,有时openclaw版本更新改动很大,随便更新很容易养死

二、配置文件改错了不知道怎么回退

改配置这件事,新手最喜欢干的两件事:一是一次改太多,二是不留备份。

有些人是急性子,上来就把 .env.yaml、好几个配置文件一起改。Gateway 起不来,也不知道是哪条改坏了。

有些人是太自信,觉得就改一个小参数,能有什么问题。结果 Gateway 直接拒绝启动,日志里写着"invalid config"——但到底是哪个参数,你已经想不起来了。

不改不知道,一改就崩溃,本质上是不知道配置改动的边界在哪里。

正确姿势:改配置前先看一眼当前值。

openclaw config get gateway.port

假设你要改端口,先把原始值记到笔记里:

原端口:18892

备份到笔记里,再改。万一要回退,直接 set 回去就行:

openclaw config set gateway.port 18892

养成习惯:改任何配置文件之前,先手动复制一份备份。

cp ~/.openclaw/openclaw.json ~/.openclaw/openclaw.json.bak.$(date +%Y%m%d%H%M%S)

这个 .bak.时间戳 格式的好处是:你可以同时保留多个历史版本,想回退到哪天就回退到哪天,不覆盖。

改完之后立刻验证,不要等到 Gateway 起不来再验证。

openclaw config validate

这条命令会检查配置文件的 JSON 语法有没有问题。如果有语法错误,它会直接告诉你哪一行有问题。


三、定时任务设完就忘,不管不顾

定时任务是很多养虾人又爱又恨的东西。设的时候热血沸腾,设完之后抛到脑后。

直到有一天发现:数据没备份、报告没生成——才发现定时任务早就躺着不动了。

最常见的定时任务死法:手动关掉了某个进程,cron 还活着,但任务跑了个寂寞。

比如你为了调试,手动 systemctl stop openclaw,调试完了 systemctl start openclaw。看起来 Gateway 重启正常,但定时任务可能因为这次重启出现了异常状态。

再比如,你改了系统时间——这对 cron 是致命的。cron 按时间调度,系统时间一跳,它就彻底混乱了。

检查定时任务状态:

openclaw cron list

看 Status 列:

  • active — 正常运行
  • error — 上次执行报错了
  • disabled — 被手动关掉了

看到 error 先别慌,查一下上次为什么错:

openclaw cron runs <任务ID> --last 1

日志会告诉你原因:是没权限、路径不对、还是依赖服务没启动。

建议每周跑一遍 cron list,发现任何非 active 的状态,立刻处理,别等。


四、磁盘塞满了还怪龙虾慢

养虾养久了,日志文件会悄悄吃掉大量磁盘空间。

~/.openclaw/logs/ 目录下,可能积累了几十GB的旧日志。龙虾在写新日志的时候发现磁盘IO奇慢,整个 Gateway 被拖垮。

我见过

症状:系统层面 CPU 和内存都正常,但龙虾响应极慢,基本上就是磁盘满了。

df -h

Use% 那列,如果超过 90%,先把日志清一清:

先看哪个目录最占空间:

du -sh ~/.openclaw/logs/*

这个命令会列出 logs 目录下每个子目录的大小。找到最大的那个,进去看:

ls -lhS ~/.openclaw/logs/ | head -20

按大小排序,看最前面那几个最大的文件。确认可以删之后,用 truncate 清空,不要 rm 删除

sudo truncate -s 0 ~/.openclaw/logs/*.log

日志文件用 truncate 清空而不是 rm 删除——这样龙虾还在写同一个文件,文件权限不会丢,进程不需要重启。

如果你直接 rm 删掉,进程还拿着一个已经消失的文件描述符,写日志会报错。

还有一个被忽视的风险:安全漏洞。

开源社区会定期披露安全漏洞。如果你的版本有已知漏洞,而你没有更新,服务器就相当于开着门等人进来。配置再强,也扛不住官方已经发了补丁但你没打。

验证当前版本:

openclaw --version

检查有没有更新:

openclaw upgrade --check

如果显示有新版本,先看更新日志,确认没有破坏性变更:

openclaw upgrade --check --verbose

确认没问题之后,再升级:

openclaw upgrade

更新的正确流程:先在测试环境跑一遍,确认配置兼容,再上生产环境。

openclaw config validate

这条命令会在不启动 Gateway 的情况下检查配置文件有没有问题。新版本有时候会改配置格式,老配置可能不兼容,提前知道比事后补救要好。


写在最后

几个姿势,没有一个是技术问题,全是习惯问题。

日志不看、配置不改、定时任务不查、磁盘不清理、更新不安——龙虾不是突然死的,是被慢慢养死的。

养虾这件事,难的不是技术,是耐心。

每周花 10 分钟过一遍这 5 项,比出问题了花两小时抢救要划算得多。


欢迎在评论区聊聊你踩过哪个坑?

如果这篇文章让你有收获,别忘了点赞、在看、转发三连~

也欢迎关注我的公众号,每天有AI最新资讯分享🦐