💾 完整备份🔄 跨设备迁移🔐 数据安全⚡ 快速恢复
📋 前言:为什么备份如此重要?
经过前两篇文章的学习,你已经成功部署了OpenClaw,并配置了通义千问和飞书集成。但现在有一个更关键的问题:
💡 关键思考:如果明天你的电脑突然故障,或者需要换一台新电脑,你的AI助手还能记得之前的所有对话、健康记录、公众号规划吗?
OpenClaw的强大之处在于记忆系统——所有的对话历史、个人偏好、项目规划都存储在本地文件中。没有备份,这些珍贵的数据可能在瞬间消失。
本文将手把手教你建立完整的备份策略,确保你的AI助手可以随时随地"满血复活"。
🎯 核心概念:OpenClaw数据全景图
1. 数据存储位置
~/.openclaw/openclaw.json | |||
~/.openclaw/workspace/MEMORY.md | |||
~/.openclaw/workspace/memory/*.md | |||
~/.openclaw/memory/main.sqlite | |||
~/.openclaw/agents/*/auth-profiles.json | |||
~/.openclaw/agents/*/sessions/ |
2. 数据分类原则
✅ 核心数据(必须备份):
MEMORY.md - 长期记忆核心 memory/*.md - 所有日常记录 openclaw.json - 系统配置 auth-profiles.json - 飞书、WhatsApp等认证
⚠️ 敏感数据(谨慎处理):
API密钥和Token - 建议单独加密存储 个人隐私信息 - 考虑加密备份 健康档案 - 包含敏感个人数据
📦 方案一:快速备份脚本(推荐)
这是一个一键备份方案,适合日常使用。
步骤1:创建备份脚本
创建自动备份脚本
# 创建备份脚本
cat > ~/openclaw-backup.sh <<'EOF'
#!/bin/bash
# 设置备份目录
BACKUP_DIR=~/OpenClaw-Backups
DATE=$(date +%Y%m%d_%H%M%S)
BACKUP_NAME="openclaw-backup-$DATE"
# 创建备份目录
mkdir -p "$BACKUP_DIR/$BACKUP_NAME"
echo "🔄 开始备份OpenClaw数据..."
# 1. 备份配置文件
echo "📋 备份配置文件..."
cp ~/.openclaw/openclaw.json "$BACKUP_DIR/$BACKUP_NAME/"
cp -r ~/.openclaw/plugins "$BACKUP_DIR/$BACKUP_NAME/" 2>/dev/null || true
# 2. 备份工作区
echo "💾 备份工作区..."
cp -r ~/.openclaw/workspace "$BACKUP_DIR/$BACKUP_NAME/"
# 3. 备份向量记忆索引
echo "🧠 备份向量记忆索引..."
mkdir -p "$BACKUP_DIR/$BACKUP_NAME/memory"
cp -r ~/.openclaw/memory/*.sqlite "$BACKUP_DIR/$BACKUP_NAME/memory/" 2>/dev/null || true
# 4. 备份认证信息(加密)
echo "🔐 备份认证信息..."
mkdir -p "$BACKUP_DIR/$BACKUP_NAME/auth"
find ~/.openclaw/agents -name "auth-profiles.json" -exec cp {} "$BACKUP_DIR/$BACKUP_NAME/auth/" \; 2>/dev/null || true
# 5. 生成备份清单
echo "📝 生成备份清单..."
cat > "$BACKUP_DIR/$BACKUP_NAME/BACKUP_INFO.txt" <<INFO
OpenClaw 备份信息
==================
备份时间: $(date)
备份版本: $BACKUP_NAME
备份内容:
- 配置文件: openclaw.json
- 工作区: workspace/
- 向量记忆: memory/*.sqlite
- 认证信息: auth/*.json
恢复方法:
1. 安装OpenClaw
2. 解压备份文件到 ~/.openclaw/
3. 重启OpenClaw服务
INFO
# 6. 压缩备份
echo "📦 压缩备份文件..."
cd "$BACKUP_DIR"
tar -czf "$BACKUP_NAME.tar.gz" "$BACKUP_NAME"
rm -rf "$BACKUP_NAME"
echo "✅ 备份完成!"
echo "📍 备份位置: $BACKUP_DIR/$BACKUP_NAME.tar.gz"
echo "📊 备份大小: $(du -h "$BACKUP_DIR/$BACKUP_NAME.tar.gz" | cut -f1)"
EOF
# 添加执行权限
chmod +x ~/openclaw-backup.sh
echo "✅ 备份脚本已创建:~/openclaw-backup.sh"步骤2:执行备份
# 执行一键备份
~/openclaw-backup.sh
# 查看备份文件
ls -lh ~/OpenClaw-Backups/
# 验证备份内容完整性
tar -tzf ~/OpenClaw-Backups/openclaw-backup-*.tar.gz | head -20
# 查看备份清单
tar -xzf ~/OpenClaw-Backups/openclaw-backup-*.tar.gz -O */BACKUP_INFO.txt步骤3:设置自动备份(可选)
⚠️ macOS用户注意
如果crontab不工作,需要在"系统偏好设置 > 安全性与隐私 > 隐私 > 完全磁盘访问权限"中添加Terminal(终端)应用
# 添加到crontab,每天凌晨2点自动备份
(crontab -l 2>/dev/null; echo "0 2 * * * ~/openclaw-backup.sh >> ~/openclaw-backup.log 2>&1") | crontab -
# 验证crontab是否添加成功
crontab -l | grep openclaw-backup
# 测试备份脚本是否可以正常执行
~/openclaw-backup.sh
# 查看备份日志
tail -20 ~/openclaw-backup.log🔄 方案二:跨设备迁移完整流程
当你需要将OpenClaw迁移到新设备时,需要更细致的操作。
阶段1:源设备准备
步骤1:停止OpenClaw服务
⚠️ 注意:根据你的操作系统选择对应命令
macOS用户使用launchctl,Linux用户使用systemctl
# 根据你的操作系统选择对应命令:
# macOS用户使用:
launchctl stop com.openclaw.gateway
# Linux用户使用:
systemctl stop openclaw-gateway
# 如果上述命令不工作,可以直接杀死进程:
pkill -f openclaw-gateway
# 验证服务已停止
ps aux | grep openclaw-gateway | grep -v grep步骤2:导出环境变量和密钥
# 创建迁移包目录
mkdir -p ~/openclaw-migration
# 导出环境变量(如果有)
env | grep -E "OPENCLAW|TAVILY|DASHSCOPE" > ~/openclaw-migration/env-vars.txt
# 导出配置摘要
cat > ~/openclaw-migration/CONFIG_SUMMARY.md <<'EOF'
# OpenClaw 迁移配置摘要
## 基本信息
- 源设备: $(hostname)
- 迁移日期: $(date)
- OpenClaw版本: $(openclaw --version 2>/dev/null || echo "未知")
## 已配置的渠道
检查 openclaw.json 中的 channels 配置
## 已配置的模型
检查 openclaw.json 中的 models 配置
## 特殊配置
- 向量记忆: 检查 memorySearch 配置
- 多Agent: 检查 agents.list 配置
EOF
echo "✅ 环境信息已导出"步骤3:创建完整迁移包
# 创建完整迁移包
cd ~
tar -czf openclaw-migration-$(date +%Y%m%d).tar.gz \
--exclude='*.log' \
--exclude='sessions/*' \
--exclude='cache/*' \
.openclaw/ \
openclaw-migration/
# 查看迁移包大小
ls -lh openclaw-migration-*.tar.gz阶段2:数据传输
选择传输方式
# 方式1:使用scp(网络传输)
scp ~/openclaw-migration-*.tar.gz user@新设备IP:~/
# 方式2:使用rsync(增量同步,适合大文件)
rsync -avz --progress ~/openclaw-migration-*.tar.gz user@新设备IP:~/
# 方式3:使用U盘或云盘(离线传输)
# 手动复制文件到U盘或上传到云盘阶段3:目标设备恢复
步骤1:安装OpenClaw(新设备)
# macOS
brew install openclaw-cn/tap/openclaw-gateway
# Linux
curl -fsSL https://get.openclaw.ai | sh
# 验证安装
openclaw --version步骤2:解压迁移包
# 解压迁移包
cd ~
tar -xzf openclaw-migration-*.tar.gz
# 验证文件完整性
ls -la .openclaw/
ls -la .openclaw/workspace/步骤3:恢复环境变量
# 恢复环境变量
cat ~/openclaw-migration/env-vars.txt >> ~/.zshrc # 或 ~/.bashrc
# 使环境变量生效
source ~/.zshrc # 或 source ~/.bashrc步骤4:重启OpenClaw
# 启动OpenClaw
launchctl start com.openclaw.gateway # macOS
# 或
systemctl start openclaw-gateway # Linux
# 验证服务状态
openclaw status阶段4:验证迁移成功
# 验证配置文件
cat ~/.openclaw/openclaw.json | grep -E "model|channels"
# 验证记忆文件
ls -la ~/.openclaw/workspace/MEMORY.md
ls -la ~/.openclaw/workspace/memory/ | head -10
# 验证向量记忆
sqlite3 ~/.openclaw/memory/main.sqlite "SELECT COUNT(*) FROM chunks;"
# 测试OpenClaw功能
openclaw status
# 测试向量搜索(在对话中测试)
# 可以说:"帮我搜索公众号规划相关信息"✅ 验证清单:
检查MEMORY.md是否包含所有历史记忆 检查memory目录是否有所有日志文件 测试飞书/WhatsApp等渠道是否正常 测试向量记忆搜索功能 检查所有Agent是否正常工作
🔐 方案三:云端同步方案(高级)
对于需要多设备同步的用户,可以使用Git私有仓库或云存储服务。
使用Git私有仓库
# 初始化Git仓库
cd ~/.openclaw/workspace
git init
git remote add origin git@github.com:yourusername/openclaw-memory.git
# 创建.gitignore
cat > .gitignore <<'EOF'
# 忽略敏感文件
*.log
sessions/
cache/
*.sqlite-journal
EOF
# 首次提交
git add .
git commit -m "OpenClaw memory backup $(date +%Y%m%d)"
git push -u origin main
# 日常同步
git add . && git commit -m "Daily update $(date +%Y%m%d)" && git push使用云存储同步
# 使用rclone同步到云存储
rclone sync ~/.openclaw/workspace remote:openclaw-backup/workspace
# 使用Dropbox/OneDrive(创建软链接)
ln -s ~/.openclaw/workspace ~/Dropbox/OpenClaw-Workspace⚡ 快速恢复:灾难恢复流程
当数据丢失或系统崩溃时,按照以下流程快速恢复:
步骤1:评估损失范围
⚠️ 确认以下问题:
是否只是配置文件损坏? 是否丢失了所有工作区文件? 向量记忆索引是否完好? 认证信息是否需要重新配置?
步骤2:选择恢复策略
步骤3:执行恢复
# 快速恢复脚本
cat > ~/openclaw-restore.sh <<'EOF'
#!/bin/bash
BACKUP_FILE=$1
if [ -z "$BACKUP_FILE" ]; then
echo "用法: ~/openclaw-restore.sh <备份文件路径>"
exit 1
fi
echo "🔄 开始恢复OpenClaw..."
# 停止服务(根据系统选择)
if command -v launchctl &> /dev/null; then
launchctl stop com.openclaw.gateway 2>/dev/null
elif command -v systemctl &> /dev/null; then
systemctl stop openclaw-gateway 2>/dev/null
fi
# 备份当前数据(以防万一)
mv ~/.openclaw ~/.openclaw.broken.$(date +%s) 2>/dev/null || true
# 解压备份
tar -xzf "$BACKUP_FILE" -C ~/
# 重启服务(根据系统选择)
if command -v launchctl &> /dev/null; then
launchctl start com.openclaw.gateway 2>/dev/null
elif command -v systemctl &> /dev/null; then
systemctl start openclaw-gateway 2>/dev/null
fi
echo "✅ 恢复完成!"
echo "⚠️ 请验证数据是否正确恢复"
EOF
chmod +x ~/openclaw-restore.sh
# 使用方法
# ~/openclaw-restore.sh ~/OpenClaw-Backups/openclaw-backup-20260326.tar.gz
# 恢复后验证
ls -la ~/.openclaw/workspace/MEMORY.md
ls -la ~/.openclaw/workspace/memory/ | wc -l💡 最佳实践建议
1. 备份策略矩阵
2. 安全建议
🔒 数据安全原则:
- 3-2-1备份法则
:3份副本、2种介质、1个异地 - 加密敏感数据
:使用gpg加密备份文件 - 定期测试恢复
:每月验证备份可用性 - 版本控制
:保留多个历史版本
3. 常见问题预防
⚠️ 注意事项:
不要将API密钥明文存储在Git仓库 定期检查备份文件完整性 迁移前确保新设备有足够存储空间 向量记忆索引可能需要重建(如果模型变化)
📚 总结
通过本文的学习,你已经掌握了:
✅ 核心技能:
一键备份脚本的使用方法 完整的跨设备迁移流程 云端同步的高级方案 灾难恢复的标准流程
记住:备份不是一次性工作,而是持续的习惯。建议:
每天:自动备份脚本运行 每周:检查备份日志和文件完整性 每月:测试一次恢复流程 每季度:更新备份策略和存储位置
现在,你的OpenClaw AI助手已经拥有了"不死之身"。无论设备故障、系统崩溃,还是换新电脑,都可以在几分钟内满血复活!
系列文章:
第一篇:《5分钟上手OpenClaw:AI助手部署完全指南》 第二篇:《OpenClaw进阶配置:通义千问+飞书完整部署手册》 第三篇:《OpenClaw数据备份与迁移:让你的AI助手永不丢失》(本文) 第四篇:《OpenClaw常见问题解决大全:从404到端口冲突》(待发布)
相关资源:
OpenClaw官方文档:https://docs.openclaw.ai OpenClaw社区:https://discord.gg/clawd 备份脚本下载:https://gitee.com/wepot/openclaw-backup-scripts.git
📝 作者:玉笔
📅 发布日期:2026-03-26
夜雨聆风