
解决方案扩容现有 Swap 到 4GB步骤 1先关闭当前 2GB Swap# 关闭正在使用的 Swap 文件sudoswapoff /swapfile# 删除旧的 Swap 文件sudorm-f/swapfile步骤 2重新创建 4GB Swap这次不会冲突# 1. 创建 4GB 新的 Swap 文件sudofallocate-l4G /swapfile# 2. 设置权限sudochmod600/swapfile# 3. 格式化为 Swapsudomkswap/swapfile# 4. 启用新的 4GB Swapsudoswapon/swapfile# 5. 确认开机自动挂载如果之前加过可跳过没加就执行echo/swapfile swap swap defaults 0 0|sudotee-a/etc/fstab步骤 3验证扩容是否成功free-h✅ 正常结果应该是Swap: 4.0Gi 0B 4.0Gi 补充解决 OpenClaw 内存溢出关键你已经有 Swap 了但还需要调整 Node.js 堆内存限制这是 OpenClaw 崩溃的核心原因# 永久设置 Node.js 堆内存上限为 1800MB2GB 物理内存4GB Swap 足够用echoexport NODE_OPTIONS--max-old-space-size1800~/.bashrcsource~/.bashrc# 重启 OpenClaw 生效openclaw restart# 查看 OpenClaw 运行状态openclaw status 关键说明为什么之前报错系统里已经有 2GB Swap 在运行无法直接覆盖必须先关闭再重建4GB Swap 足够吗你的物理内存是 1.6Gi实际可用 4Gi Swap完全能支撑 OpenClaw 运行不会再 OOM验证效果执行free -h看到 Swap 是 4.0Gi 就说明扩容成功启动 OpenClaw 后执行openclaw logs没有JavaScript heap out of memory就彻底解决了。总结核心问题服务器已有 2GB Swap但 Node.js 堆内存限制过低导致 OpenClaw 崩溃解决步骤先扩容 Swap 到 4GB再调整 Node.js 堆内存上限到 1800MB最终效果既解决了 Node.js 堆溢出又用 Swap 兜底防止物理内存不足。