拓十年匠心定制 · 商业建站与技术教学双线并行 咨询热线:400-886-1026 service@lmnt.cn
ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

云养OpenClaw实战:Ubuntu磁盘告急94%,用ncdu定位后TaoToken配置救援实录

云养OpenClaw实战:Ubuntu磁盘告急94%,用ncdu定位后TaoToken配置救援实录

1. 磁盘告急这件事,OpenClaw 云养玩家迟早会撞上

如果你在 Ubuntu 上长期跑 OpenClaw 这类 AI 代理服务,磁盘从 60% 一路爬到 94% 几乎是必然事件。原因不复杂:Node.js 包缓存、系统日志、APT 安装包、临时文件,这些东西不会自己消失,只会默默膨胀。等你某天敲下df -h,看到根分区只剩 2GB 可用,服务随时可能因为写不进日志而崩掉。

这篇内容适合三类人:正在 Ubuntu 上云养 OpenClaw 的开发者、被 Linux 磁盘空间问题折腾过的运维新手、以及想把模型调用通道统一管理起来的 AI 工具玩家。核心动作分两条线:一条是用 ncdu 定位大文件并安全清理,把磁盘从 94% 压回 74%;另一条是在清理完成后,用 TaoToken 统一 Key 和 API 通道,把 OpenClaw 的模型配置收敛到一份可复制的 config.toml 和 settings.json 骨架里。

我试过在 40GB 系统盘的 Ubuntu 24.04 上跑 OpenClaw,磁盘告急那天可用空间只剩 2.4GB,说不慌是假的。下面把整个排查、清理、配置的过程拆开讲,命令都可以直接复制。

2. 前置准备:TaoToken 通道与 OpenClaw 环境确认

在动手清理之前,先把两件事确认清楚:系统环境是什么版本,以及模型调用通道是否已经统一。

TaoToken 在这里的角色是统一 API 通道。OpenClaw 这类工具通常需要配置多个模型提供方的 Key,如果每个都单独管理,配置文件会变得很乱。通过 TaoToken 的 API 地址https://taotoken.net/api,你可以用一个 Key 走通多个模型的调用,配置文件里只需要维护一份 base_url 和 api_key。

具体操作路径:

  • 注册并登录后,进入控制台创建 API Key:https://taotoken.net/console/api-keys?utm_source=taotoken_aicg_blog_end&utm_content=api_keys&utm_campaign=rewrite
  • 如果你需要确认模型名称和调用格式,可以在模型对话页面先试一次:https://taotoken.net/models?utm_source=taotoken_aicg_blog_end&utm_content=models&utm_campaign=rewrite
  • 接入文档在这里,配置参数以文档为准:https://taotoken.net/doc?utm_source=taotoken_aicg_blog_end&utm_content=doc&utm_campaign=rewrite

系统环境确认命令:

cat /etc/os-release

输出确认是 Ubuntu 24.04 LTS 即可。不同发行版的日志路径和包管理器不同,后面的清理命令以 Ubuntu 为准。

然后看磁盘水位:

df -h

典型输出:

/dev/vda2 40G 36G 2.4G 94% /

根分区 94%,可用 2.4GB。这个状态下不建议直接跑大型构建或模型下载,先把空间腾出来。

3. 可复制配置:ncdu 定位 + 安全清理 + TaoToken 骨架

3.1 安装 ncdu 并扫描根目录

ncdu 是可视化磁盘分析工具,比du逐层翻目录直观得多。

sudo apt install ncdu -y sudo ncdu / --exclude /proc --exclude /sys --exclude /run

扫描结果里/root占了 13.3GB,这明显不正常。超级用户家目录通常只有配置文件,不该有十几 GB。

进入/root按大小排序:

sudo -i cd /root du -sh .[^.]* * 2>/dev/null | sort -rh | head -20

排名前三:

5.2G .npm 4.4G .cache 1.9G .openclaw

.npm是 Node.js 包缓存,.cache是通用缓存,这两个可以安全清理。.openclaw是核心业务数据,必须保留。

3.2 清理 Node.js 缓存

npm cache clean --force rm -rf ~/.npm/*

清理后.npm从 5.2GB 降到 28MB。

3.3 清理系统临时缓存

rm -rf ~/.cache/*

.cache从 4.4GB 降到 12KB。

3.4 清理 APT 和 systemd 日志

sudo apt clean sudo apt autoremove -y sudo journalctl --vacuum-size=200M sudo find /var/log -name "*.gz" -type f -delete sudo find /var/log -name "*.old" -type f -delete

3.5 处理冗余 Swap 文件

swapon --show

如果看到swapfile和swap.img两个交换文件,保留一个即可:

sudo swapoff /swap.img sudo rm /swap.img sudo nano /etc/fstab

在/etc/fstab里把swap.img那一行注释掉,防止重启报错。

3.6 TaoToken 配置骨架

清理完成后,把 OpenClaw 的模型通道统一到 TaoToken。以下是config.toml骨架:

[model] provider = "taotoken" base_url = "https://taotoken.net/api" api_key = "sk-你的TaoToken密钥" model_name = "claude-sonnet-4-20250514" max_tokens = 4096 temperature = 0.7 [agent] name = "openclaw" workspace = "/root/.openclaw" log_level = "info"

settings.json骨架:

{ "api": { "base_url": "https://taotoken.net/api", "api_key": "sk-你的TaoToken密钥", "timeout": 60 }, "model": { "default": "claude-sonnet-4-20250514", "fallback": "gpt-4o" }, "cache": { "enabled": true, "dir": "/root/.openclaw/cache", "max_size_mb": 512 } }

注意cache.max_size_mb这个参数,给缓存设上限能避免下次再被缓存撑爆磁盘。如果你跑的是长期编码任务或 Agent 工作流,可以考虑用 Coding Plan 来管理调用额度:https://taotoken.net/coding-plan?utm_source=taotoken_aicg_blog_end&utm_content=coding_plan&utm_campaign=rewrite

4. 验证请求与磁盘前后对比

4.1 验证 TaoToken 通道

配置写好后,先用 curl 确认通道能通:

curl -s https://taotoken.net/api/v1/messages \ -H "Content-Type: application/json" \ -H "x-api-key: sk-你的TaoToken密钥" \ -H "anthropic-version: 2023-06-01" \ -d '{ "model": "claude-sonnet-4-20250514", "max_tokens": 64, "messages": [{"role": "user", "content": "ping"}] }'

返回里有content字段就说明通道正常。如果返回 401,检查 Key 是否复制完整;返回 404,检查 base_url 是否多了或少了路径段。

4.2 磁盘前后对比

清理前:

/dev/vda2 40G 36G 2.4G 94% /

清理后:

df -h
/dev/vda2 40G 28G 10G 74% /

可用空间从 2.4GB 涨到 10GB,使用率从 94% 降到 74%。再用 ncdu 复查/root:

sudo ncdu /root

/root从 13.3GB 缩到 1.9GB,剩下的正好是.openclaw核心数据。

4.3 设置定时清理

把缓存清理写进 crontab,每月自动跑一次:

crontab -e

添加:

0 3 1 * * npm cache clean --force && rm -rf ~/.cache/* && sudo apt autoremove -y

5. 本篇常见错排查

ncdu 扫描卡住不动:通常是扫到了/proc或/sys,加上--exclude参数即可。如果还是慢,先扫/root和/var两个重点目录。

rm -rf ~/.npm/*后 npm 报错:这是正常的,下次npm install会重新下载。如果项目依赖锁文件损坏,删掉node_modules重新安装。

journalctl --vacuum-size没效果:检查是否有其他日志服务在写。Ubuntu 24.04 默认用 systemd-journald,如果装了 rsyslog,/var/log/syslog也会占空间,需要单独清理。

TaoToken 返回 403:检查 Key 是否绑定了正确的模型权限。在控制台确认 Key 的状态和可用模型列表。

OpenClaw 启动后读不到配置:确认config.toml和settings.json的路径与 OpenClaw 实际读取路径一致。可以用strace -e openat openclaw 2>&1 | grep config追踪它到底读了哪个文件。

swap.img 删除后重启报错:/etc/fstab里的对应行没注释掉。用sudo blkid确认没有残留的 swap 分区引用。

清理后磁盘又快速涨回来:检查 OpenClaw 的日志级别,如果是debug,改成info或warn。另外确认cache.max_size_mb是否生效。

6. 把通道和磁盘都管起来

磁盘清理是一次性动作,但缓存增长是持续过程。把npm cache clean、apt autoremove、journalctl --vacuum-size写进定时任务,配合云服务商后台的 80% 磁盘告警,基本不会再遇到 94% 的心跳时刻。

模型通道这边,TaoToken 的 API 地址https://taotoken.net/api配合一份config.toml就能把 OpenClaw 的调用收敛干净。需要创建或轮换 Key 的时候去控制台:https://taotoken.net/console/api-keys?utm_source=taotoken_aicg_blog_end&utm_content=api_keys&utm_campaign=rewrite,配置参数以接入文档为准:https://taotoken.net/doc?utm_source=taotoken_aicg_blog_end&utm_content=doc&utm_campaign=rewrite。如果你跑的是 Claude Code 这类编码 Agent,Anthropic 兼容通道的配置方式在文档里有单独说明。

最后留一个习惯:每次登上服务器,先敲df -h和ncdu /root,三十秒的事,能省掉后面两小时的救火。

返回列表