Skip to content

将 OpenClaw 迁移到新机器

本指南将 OpenClaw Gateway 从一台机器迁移到另一台机器,无需重新进行入门配置

迁移在概念上很简单:

  • 复制状态目录($OPENCLAW_STATE_DIR,默认:~/.openclaw/)——包括配置、身份验证、会话和频道状态。
  • 复制您的工作空间(默认为 ~/.openclaw/workspace/)——包括您的 agent 文件(记忆、提示等)。

但在配置文件权限部分复制方面存在常见陷阱。

开始之前(您要迁移的内容)

1) 确定您的状态目录

大多数安装使用默认值:

  • 状态目录: ~/.openclaw/

但如果您使用以下方式,可能会有所不同:

  • --profile <name>(通常变成 ~/.openclaw-<profile>/)
  • OPENCLAW_STATE_DIR=/some/path

如果您不确定,在机器上运行:

bash
openclaw status

在输出中查找 OPENCLAW_STATE_DIR / profile 的提及。如果您运行多个网关,请对每个配置文件重复此操作。

2) 确定您的工作空间

常见默认值:

  • ~/.openclaw/workspace/(推荐的工作空间)
  • 您创建的自定义文件夹

您的工作空间是 MEMORY.mdUSER.mdmemory/*.md 等文件所在的位置。

3) 了解您将保留什么

如果您复制状态目录和工作空间,您将保留:

  • Gateway 配置(openclaw.json)
  • 身份验证配置文件 / API 密钥 / OAuth 令牌
  • 会话历史 + agent 状态
  • 频道状态(例如 WhatsApp 登录/会话)
  • 您的工作空间文件(记忆、技能笔记等)

如果您复制工作空间(例如通过 Git),您不会保留:

  • 会话
  • 凭据
  • 频道登录

这些都存储在 $OPENCLAW_STATE_DIR 下。

迁移步骤(推荐)

步骤 0 — 进行备份(旧机器)

机器上,首先停止网关,以免文件在复制过程中发生变化:

bash
openclaw gateway stop

(可选但推荐)归档状态目录和工作空间:

bash
# Adjust paths if you use a profile or custom locations
cd ~
tar -czf openclaw-state.tgz .openclaw

tar -czf openclaw-workspace.tgz .openclaw/workspace

如果您有多个配置文件/状态目录(例如 ~/.openclaw-main~/.openclaw-work),请分别归档每个。

步骤 1 — 在新机器上安装 OpenClaw

机器上,安装 CLI(如果需要还要安装 Node):

在此阶段,入门配置创建全新的 ~/.openclaw/ 是可以的——您将在下一步覆盖它。

步骤 2 — 将状态目录 + 工作空间复制到新机器

复制两者:

  • $OPENCLAW_STATE_DIR(默认 ~/.openclaw/)
  • 您的工作空间(默认 ~/.openclaw/workspace/)

常见方法:

  • scp tarball 并解压
  • 通过 SSH 使用 rsync -a
  • 外部驱动器

复制后,确保:

  • 包含隐藏目录(例如 .openclaw/)
  • 运行网关的用户具有正确的文件所有权

步骤 3 — 运行 Doctor(迁移 + 服务修复)

机器上:

bash
openclaw doctor

Doctor 是"安全无聊"的命令。它修复服务、应用配置迁移并警告不匹配。

然后:

bash
openclaw gateway restart
openclaw status

常见陷阱(以及如何避免)

陷阱:配置文件 / 状态目录不匹配

如果您使用配置文件(或 OPENCLAW_STATE_DIR)运行旧网关,而新网关使用不同的配置文件,您将看到如下症状:

  • 配置更改不生效
  • 频道丢失 / 已注销
  • 会话历史为空

修复:使用您迁移的相同配置文件/状态目录运行网关/服务,然后重新运行:

bash
openclaw doctor

陷阱:仅复制 openclaw.json

openclaw.json 是不够的。许多提供程序将状态存储在:

  • $OPENCLAW_STATE_DIR/credentials/
  • $OPENCLAW_STATE_DIR/agents/<agentId>/...

始终迁移整个 $OPENCLAW_STATE_DIR 文件夹。

陷阱:权限 / 所有权

如果您以 root 身份复制或更改了用户,网关可能无法读取凭据/会话。

修复:确保状态目录 + 工作空间归运行网关的用户所有。

陷阱:在远程/本地模式之间迁移

  • 如果您的 UI(WebUI/TUI)指向远程网关,则远程主机拥有会话存储 + 工作空间。
  • 迁移您的笔记本电脑不会移动远程网关的状态。

如果您处于远程模式,请迁移网关主机

陷阱:备份中的机密信息

$OPENCLAW_STATE_DIR 包含机密信息(API 密钥、OAuth 令牌、WhatsApp 凭据)。将备份视为生产环境机密:

  • 加密存储
  • 避免通过不安全的渠道共享
  • 如果怀疑泄露则轮换密钥

验证清单

在新机器上,确认:

  • openclaw status 显示网关正在运行
  • 您的频道仍然连接(例如 WhatsApp 不需要重新配对)
  • 仪表板打开并显示现有会话
  • 您的工作空间文件(记忆、配置)存在

相关内容