OpenClaw 環(huán)境完整遷移實操步驟
一、遷移概述
OpenClaw 的運行環(huán)境由全局核心配置、模型定義、插件/技能生態(tài)、用戶工作空間和環(huán)境變量認證五部分組成。遷移的本質(zhì)是將這五部分核心文件完整復(fù)制到目標環(huán)境,確保配置、功能和數(shù)據(jù)完全一致。
二、關(guān)鍵文件/目錄詳解(先搞懂“為什么要拷”)
在開始操作前,需先確認源環(huán)境的實際路徑(npm 全局安裝路徑因人而異,見下文“路徑查找方法”)。
| 組件類型 | 作用說明 | 默認/常見路徑示例 |
|---|---|---|
| 全局配置文件 | 存儲 OpenClaw 的核心設(shè)置(模型默認參數(shù)、認證方式、日志級別等) | ~/.npm-global/lib/node_modules/openclaw/config.json |
| 模型配置文件 | 自定義模型的定義(如模型名稱、API 端點、參數(shù)映射等) | ~/.npm-global/lib/node_modules/openclaw/models.json |
| 插件目錄 | 所有已安裝插件的代碼和配置(插件是 OpenClaw 功能擴展的核心) | ~/.npm-global/lib/node_modules/openclaw/plugins/ |
| 技能目錄 | 所有已安裝技能的定義(技能是插件的上層封裝,用于特定任務(wù)流) | ~/.npm-global/lib/node_modules/openclaw/skills/ |
| 用戶工作空間 | 存儲項目文件、對話記憶(MEMORY.md)、用戶偏好(USER.md)、會話歷史等 | ~/.openclaw/workspace/(可通過配置修改) |
| 環(huán)境變量配置 | 存儲敏感信息(如 API 密鑰)、自定義路徑等(OpenClaw 會讀取 OPENCLAW_* 開頭的變量) | ~/.bashrc / ~/.zshrc / ~/.profile |
?? 路徑查找方法(避免拷貝錯誤?。?/h3>
在源環(huán)境執(zhí)行以下命令,獲取真實路徑:
# 1. 查找 OpenClaw 全局安裝目錄(核心?。? OPENCLAW_GLOBAL="$(npm root -g)/openclaw" echo "OpenClaw 全局目錄: $OPENCLAW_GLOBAL" # 2. 查找用戶工作空間目錄 OPENCLAW_WORKSPACE="$(openclaw config get workspace 2>/dev/null || echo "$HOME/.openclaw/workspace")" echo "OpenClaw 工作空間: $OPENCLAW_WORKSPACE" # 3. 確認當前使用的 Shell echo "當前 Shell: $SHELL"
如下圖所示

三、實操步驟(分“備份源環(huán)境”和“恢復(fù)目標環(huán)境”)
?? 第一階段:源環(huán)境備份(按順序執(zhí)行)
1. 備份前準備
確保 OpenClaw 未運行(避免文件被占用):
# 謹慎執(zhí)行!強制結(jié)束 OpenClaw 進程(若有) pkill -f openclaw || echo "無 OpenClaw 進程運行"
或者使用以下命令查看進程:
ps -ef | grep openclaw
紅框中為openclaw進程,如下圖所示:

定義備份路徑(建議帶日期,方便管理):
# 自定義備份目錄(可修改為你想存放的位置) BACKUP_DIR="$HOME/openclaw_backup_$(date +%Y%m%d)" mkdir -p "$BACKUP_DIR" echo "備份目錄: $BACKUP_DIR"
2. 執(zhí)行備份(復(fù)制所有核心文件)
# --- 1. 備份全局配置、模型、插件、技能 --- if [ -d "$OPENCLAW_GLOBAL" ]; then cp -a "$OPENCLAW_GLOBAL/config.json" "$BACKUP_DIR/" 2>/dev/null || echo "config.json 不存在,跳過" cp -a "$OPENCLAW_GLOBAL/models.json" "$BACKUP_DIR/" 2>/dev/null || echo "models.json 不存在,跳過" cp -a "$OPENCLAW_GLOBAL/plugins/" "$BACKUP_DIR/" 2>/dev/null || echo "plugins 目錄不存在,跳過" cp -a "$OPENCLAW_GLOBAL/skills/" "$BACKUP_DIR/" 2>/dev/null || echo "skills 目錄不存在,跳過" else echo "錯誤: 未找到 OpenClaw 全局目錄 $OPENCLAW_GLOBAL" exit 1 fi # --- 2. 備份用戶工作空間 --- if [ -d "$OPENCLAW_WORKSPACE" ]; then cp -a "$OPENCLAW_WORKSPACE" "$BACKUP_DIR/workspace" else echo "警告: 未找到工作空間 $OPENCLAW_WORKSPACE,跳過" fi # --- 3. 備份 Shell 配置文件(環(huán)境變量) --- # 根據(jù)上面查到的 Shell 選擇對應(yīng)文件(以下以 bash 為例,zsh 請改為 ~/.zshrc) SHELL_CONFIG="$HOME/.bashrc" cp -a "$SHELL_CONFIG" "$BACKUP_DIR/$(basename $SHELL_CONFIG)" echo "? 備份完成!請檢查 $BACKUP_DIR 內(nèi)容:" ls -lah "$BACKUP_DIR"
?? 第二階段:目標環(huán)境恢復(fù)
1. 目標環(huán)境準備
- 安裝 Node.js & npm:確保版本與源環(huán)境一致(可通過
node -v和npm -v查看源環(huán)境版本)。 - 安裝 OpenClaw:建議安裝與源環(huán)境相同版本(避免配置不兼容):
# 先查看源環(huán)境 OpenClaw 版本(在源環(huán)境執(zhí)行) openclaw --version # 目標環(huán)境安裝對應(yīng)版本(假設(shè)源環(huán)境是3.2) npm install -g openclaw@3.2
如果能確認都是最新版本,或者源環(huán)境是最新版本,則直接執(zhí)行如下命令安裝:
curl -fsSL https://openclaw.ai/install.sh | bash
- 確認目標環(huán)境路徑(和源環(huán)境一樣,先執(zhí)行“路徑查找方法”獲取
OPENCLAW_GLOBAL和OPENCLAW_WORKSPACE)。
2. 上傳備份文件到目標環(huán)境
將源環(huán)境的 $BACKUP_DIR 文件夾(如 openclaw_backup_20260305)上傳到目標環(huán)境的任意位置(如 ~/openclaw_backup_20260305)。
3. 執(zhí)行恢復(fù)(按順序!)
# --- 0. 定義變量(請根據(jù)實際情況修改?。?--- # 目標環(huán)境的 OpenClaw 全局目錄(通過 npm root -g 獲?。? OPENCLAW_GLOBAL="$HOME/.npm-global/lib/node_modules/openclaw" # 目標環(huán)境的工作空間目錄(通過 openclaw config get workspace 獲?。? OPENCLAW_WORKSPACE="$HOME/.openclaw/workspace" # 上傳后的備份目錄路徑 BACKUP_DIR="$HOME/openclaw_backup_20260305" # 目標環(huán)境的 Shell 配置文件 SHELL_CONFIG="$HOME/.bashrc" # --- 1. 停止 OpenClaw 進程 --- pkill -f openclaw || echo "無 OpenClaw 進程運行" # --- 2. 恢復(fù)全局配置、模型、插件、技能 --- if [ -d "$BACKUP_DIR" ]; then # 恢復(fù) config.json [ -f "$BACKUP_DIR/config.json" ] && cp -a "$BACKUP_DIR/config.json" "$OPENCLAW_GLOBAL/" # 恢復(fù) models.json [ -f "$BACKUP_DIR/models.json" ] && cp -a "$BACKUP_DIR/models.json" "$OPENCLAW_GLOBAL/" # 恢復(fù) plugins 目錄 [ -d "$BACKUP_DIR/plugins" ] && cp -a "$BACKUP_DIR/plugins/" "$OPENCLAW_GLOBAL/" # 恢復(fù) skills 目錄 [ -d "$BACKUP_DIR/skills" ] && cp -a "$BACKUP_DIR/skills/" "$OPENCLAW_GLOBAL/" else echo "錯誤: 未找到備份目錄 $BACKUP_DIR" exit 1 fi # --- 3. 恢復(fù)工作空間 --- if [ -d "$BACKUP_DIR/workspace" ]; then mkdir -p "$(dirname $OPENCLAW_WORKSPACE)" # 確保父目錄存在 cp -a "$BACKUP_DIR/workspace" "$OPENCLAW_WORKSPACE" fi # --- 4. 恢復(fù)環(huán)境變量(謹慎!建議先備份目標環(huán)境原配置) --- # 先備份目標環(huán)境當前的 Shell 配置 cp -a "$SHELL_CONFIG" "$SHELL_CONFIG.bak.$(date +%Y%m%d)" # 方法 A:直接覆蓋(僅當目標環(huán)境是全新環(huán)境時推薦) # cp -a "$BACKUP_DIR/$(basename $SHELL_CONFIG)" "$SHELL_CONFIG" # 方法 B:手動合并(推薦!) # 打開備份的 Shell 配置文件,將其中 OPENCLAW_* 開頭的行復(fù)制到目標環(huán)境的 $SHELL_CONFIG 末尾 echo "?? 請手動合并環(huán)境變量:" echo " 1. 打開備份文件: cat $BACKUP_DIR/$(basename $SHELL_CONFIG)" echo " 2. 將其中 OPENCLAW_* 開頭的行復(fù)制到 $SHELL_CONFIG 末尾" echo " 3. 執(zhí)行: source $SHELL_CONFIG" # --- 5. 修復(fù)權(quán)限(如果全局目錄需要 sudo) --- # 若 OpenClaw 安裝在系統(tǒng)目錄(如 /usr/local/lib/node_modules),需加 sudo 執(zhí)行上述 cp 命令 # 例如: sudo cp -a "$BACKUP_DIR/config.json" "$OPENCLAW_GLOBAL/" echo "? 恢復(fù)操作完成!請繼續(xù)執(zhí)行“驗證步驟”。"
四、驗證遷移是否成功(必須做?。?/h2>
在目標環(huán)境依次執(zhí)行以下命令,確認所有組件正常:
# 1. 檢查 OpenClaw 版本 openclaw --version # 2. 檢查全局配置 openclaw config list # 3. 檢查模型列表 openclaw models list # 4. 檢查插件列表 openclaw plugins list # 5. 檢查技能列表 openclaw skills list # 6. 檢查工作空間文件 ls -lah "$(openclaw config get workspace)" # 7. 運行簡單測試(替換為你常用的命令) openclaw run "測試遷移是否成功"
五、常見問題與注意事項
1. 版本兼容性
- 源環(huán)境和目標環(huán)境的 OpenClaw 大版本必須一致(如 3.x → 3.x,不要跨 2.x 大版本直接遷移),否則可能出現(xiàn)配置解析錯誤。
- 若必須跨版本,建議先在目標環(huán)境安裝新版本,再手動遷移
config.json和工作空間,插件重新安裝。
2. 插件依賴缺失
部分插件可能依賴系統(tǒng)庫或第三方工具(如 ffmpeg、python3、tensorflow 等)。遷移后若插件報錯,需在目標環(huán)境手動安裝依賴:
# 以 Ubuntu 為例,安裝常見依賴 sudo apt update && sudo apt install -y ffmpeg python3 python3-pip # 若插件要求特定 Python 包 pip3 install xxx
3. 權(quán)限問題
若 OpenClaw 是通過 sudo npm install -g 安裝的,全局目錄可能在 /usr/local/lib/node_modules/openclaw,此時備份和恢復(fù)需要加 sudo,且要注意文件所有者:
# 恢復(fù)后修復(fù)所有者(假設(shè)你的用戶名是 user) sudo chown -R user:user "$OPENCLAW_GLOBAL" sudo chown -R user:user "$OPENCLAW_WORKSPACE"
4. 環(huán)境變量沖突
- 若目標環(huán)境已有
OPENCLAW_API_KEY等變量,手動合并 Shell 配置時需注意覆蓋順序(后寫的生效)。 - 建議使用
openclaw config set命令重新設(shè)置敏感信息,替代直接復(fù)制環(huán)境變量。
5. 工作空間軟鏈接
- 若工作空間中包含軟鏈接(
ln -s創(chuàng)建的文件),cp -a會保留軟鏈接。若軟鏈接指向的文件不在工作空間內(nèi),需單獨遷移這些文件,或修改軟鏈接為相對路徑。
六、快速參考(核心命令速查)
| 操作 | 命令示例 |
|---|---|
| 查找 npm 全局目錄 | npm root -g |
| 查看 OpenClaw 版本 | openclaw --version |
| 查看 OpenClaw 配置 | openclaw config list |
| 停止 OpenClaw 進程 | pkill -f openclaw |
| 復(fù)制目錄(保留權(quán)限/軟鏈) | cp -a 源目錄 目標目錄 |
七、一鍵打包腳本
1、用戶目錄替換成自己的。
#!/bin/bash
# OpenClaw 環(huán)境備份打包腳本
# 功能:將當前 OpenClaw 配置、模型、插件、技能和工作空間打包成一個 tarball
set -e
# 定義變量
USER_HOME="/home/tht"
OPENCLAW_NPM="$USER_HOME/.npm-global/lib/node_modules/openclaw"
WORKSPACE="$USER_HOME/.openclaw/workspace"
BACKUP_DIR="$WORKSPACE/backup_staging"
TIMESTAMP=$(date +%Y%m%d_%H%M%S)
ARCHIVE_NAME="openclaw_backup_$TIMESTAMP.tar.gz"
# 創(chuàng)建備份目錄
echo "正在創(chuàng)建備份目錄..."
rm -rf "$BACKUP_DIR"
mkdir -p "$BACKUP_DIR"
# 定義要備份的文件和目錄
echo "正在檢查并復(fù)制文件..."
# 配置文件
if [ -f "$OPENCLAW_NPM/config.json" ]; then
cp "$OPENCLAW_NPM/config.json" "$BACKUP_DIR/"
echo "? 已復(fù)制:config.json"
else
echo "? config.json 不存在 (跳過)"
fi
if [ -f "$OPENCLAW_NPM/models.json" ]; then
cp "$OPENCLAW_NPM/models.json" "$BACKUP_DIR/"
echo "? 已復(fù)制:models.json"
else
echo "? models.json 不存在 (跳過)"
fi
# 插件目錄
if [ -d "$OPENCLAW_NPM/plugins" ]; then
cp -r "$OPENCLAW_NPM/plugins" "$BACKUP_DIR/"
echo "? 已復(fù)制:plugins"
else
echo "? plugins 目錄不存在 (跳過)"
fi
# 技能目錄
if [ -d "$OPENCLAW_NPM/skills" ]; then
cp -r "$OPENCLAW_NPM/skills" "$BACKUP_DIR/"
echo "? 已復(fù)制:skills"
else
echo "? skills 目錄不存在 (跳過)"
fi
# 工作空間 (排除 backup_staging 目錄本身)
echo "正在處理工作空間..."
WORKSPACE_BACKUP_DIR="$BACKUP_DIR/workspace_content"
mkdir -p "$WORKSPACE_BACKUP_DIR"
# 復(fù)制工作空間中除備份目錄外的所有內(nèi)容
for item in "$WORKSPACE"/*; do
if [ -e "$item" ] && [ "$(basename "$item")" != "backup_staging" ] && [ "$(basename "$item")" != "archives" ]; then
cp -r "$item" "$WORKSPACE_BACKUP_DIR/"
echo "? 已復(fù)制工作空間項:$(basename "$item")"
fi
done
# 創(chuàng)建工作空間中的歸檔目錄
echo ""
echo "正在創(chuàng)建壓縮包..."
ARCHIVE_WORKSPACE_DIR="$WORKSPACE/archives"
mkdir -p "$ARCHIVE_WORKSPACE_DIR"
# 創(chuàng)建壓縮包
cd "$BACKUP_DIR"
tar -czf "$ARCHIVE_WORKSPACE_DIR/$ARCHIVE_NAME" ./*
echo "? 壓縮包已創(chuàng)建:$ARCHIVE_WORKSPACE_DIR/$ARCHIVE_NAME"
# 顯示文件信息
echo ""
echo "=========================================="
echo "備份完成!"
echo "=========================================="
echo "壓縮包位置:$ARCHIVE_WORKSPACE_DIR/$ARCHIVE_NAME"
echo "文件大小:$(du -h "$ARCHIVE_WORKSPACE_DIR/$ARCHIVE_NAME" | cut -f1)"
echo ""
echo "解壓命令:"
echo " tar -xzf $ARCHIVE_WORKSPACE_DIR/$ARCHIVE_NAME -C /path/to/target"
echo ""
echo "=========================================="2. 給腳本添加執(zhí)行權(quán)限
chmod +x /home/tht/.openclaw/workspace/backup_openclaw.sh
3. 執(zhí)行備份腳本
sh /home/tht/.openclaw/workspace/backup_openclaw.sh
4. (可選)清理臨時目錄
rm -rf /home/tht/.openclaw/workspace/backup_staging
生成的壓縮包位置,比如今天這個包:
路徑: /home/tht/.openclaw/workspace/archives/openclaw_backup_20260305_160638.tar.gz
如下圖所示:

5.在目標環(huán)境解壓命令
tar -xzf /path/to/openclaw_backup_xxxx.tar.gz -C /path/to/target
如果您想要手動直接打包而不使用腳本,可以使用以下命令(記得換成你自己的目錄):
# 直接打包到工作空間 tar -czf /home/tht/.openclaw/workspace/archives/openclaw_manual_backup.tar.gz \ ~/.npm-global/lib/node_modules/openclaw/config.json \ ~/.npm-global/lib/node_modules/openclaw/skills \ /home/tht/.openclaw/workspace/AGENTS.md \ /home/tht/.openclaw/workspace/SOUL.md \ /home/tht/.openclaw/workspace/USER.md \ /home/tht/.openclaw/workspace/MEMORY.md \ /home/tht/.openclaw/workspace/memory/
到此這篇關(guān)于OpenClaw 環(huán)境完整遷移實操步驟的文章就介紹到這了,更多相關(guān)OpenClaw 環(huán)境遷移內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持腳本之家!
相關(guān)文章

OpenClaw操控宿主機Win11本地環(huán)境完整實操
本文介紹了如何將Win11宿主機配置為OpenClaw的遠程執(zhí)行節(jié)點,通過SSH/WinRM協(xié)議建立虛擬機Ubuntu→Win11的可信通信通道,實現(xiàn)自動化閉環(huán),內(nèi)容涵蓋了前置條件、網(wǎng)絡(luò)配置、Open2026-03-07
Linux環(huán)境下配置openclaw并連接到局域網(wǎng)ollama模型
本文介紹了如何在Linux環(huán)境下配置OpenClaw并連接到局域網(wǎng)內(nèi)的ollama模型,包括環(huán)境準備、部署步驟、配置provider和model、飛書插件安裝與配置,以及消息測試和定時任務(wù)設(shè)置,2026-03-04
Ubuntu系統(tǒng)OpenClaw版本降級的實例操作
本文主要介紹了如何將OpenClaw從2026.3.2版本降級到2026.2.3版本,降級的核心動因是新版本存在Bug、兼容性差或功能/性能不符合需求,文章詳細描述了命令行版本和桌面端版本的2026-03-07
OpenClaw使用Ollama本地模型的實現(xiàn)(支持工具調(diào)用))
Ollama 是一個本地 LLM 運行時,可以輕松在你的機器上運行開源模型,OpenClaw 通過 Ollama 的 OpenAI 兼容 API 進行集成,下面就來詳細的介紹一下,感興趣的可以了解一下2026-03-06
OpenClaw 本地安裝與配置十分鐘完成(附常用命令速查)
OpenClaw 是一個開源的個人 AI 助手,支持系統(tǒng)操作、文件讀寫、代碼執(zhí)行等,它可以通過配置文件進行各種設(shè)置,這篇文章給大家介紹OpenClaw 快速入門:10 分鐘完成本地安裝與配2026-03-06
這篇文章給大家介紹OpenClaw 使用教程跨平臺安裝部署、配置大模型 Provider、接入 Ollama、本地 Skills/插件、瀏覽器控制、搜索 API、Obsidian Skills的相關(guān)操作,感興趣的2026-03-05
零基礎(chǔ)入門OpenClaw 完整安裝配置實戰(zhàn)指南(完全流程)
OpenClaw就是一個可以讓 AI 住進你的 Telegram、管理你的電腦或服務(wù)器、幫你寫代碼的開源框架,下面給大家分享整個安裝過程,感興趣的朋友跟隨小編一起看看吧2026-03-03








