前几期我们聊了监控与日志,让你可以掌握 Agent 的运行状态。但数据安全不仅仅是监控——当硬件故障、误操作或灾难发生时,如何保护你的配置和会话数据?这就是 备份与恢复 要解决的问题。
本期我们来深入了解 OpenClaw 的备份策略:哪些数据需要备份、如何备份、以及如何恢复。
需要备份的数据
OpenClaw 的数据主要存储在 ~/.openclaw/ 目录下:
1. 配置文件
位置:~/.openclaw/openclaw.json
包含:
- • Gateway 配置(端口、认证、绑定模式)
- • 频道配置(WhatsApp、Telegram 等)
- • 工具策略和沙箱设置
- • Agent 配置和模型设置
重要性:⭐⭐⭐⭐⭐(最高)
没有配置文件,你需要重新配置整个系统。
2. 凭证和密钥
位置:
- •
~/.openclaw/credentials/- 频道凭证、配对白名单 - •
~/.openclaw/agents/<agentId>/agent/auth-profiles.json- API 密钥、OAuth Token - •
~/.openclaw/secrets.json- 文件后端密钥(如果使用)
重要性:⭐⭐⭐⭐⭐(最高)
丢失凭证意味着重新配对设备、重新授权 API 访问。
3. 会话数据
位置:~/.openclaw/agents/<agentId>/sessions/
包含:
- •
sessions.json- 会话索引 - •
*.jsonl- 会话记录(对话历史)
重要性:⭐⭐⭐⭐(高)
会话数据是 Agent 的"记忆",丢失后 Agent 会"忘记"之前的对话。
4. 工作区文件
位置:~/.openclaw/workspace/ 或自定义工作区路径
包含:
- • 项目文件
- • Skill 定义
- • 生成的内容
重要性:⭐⭐⭐(中)
取决于你的工作流,有些文件可能是临时生成的,有些则是重要的项目数据。
5. 执行审批列表
位置:~/.openclaw/exec-approvals.json
包含:
- • 允许执行的命令列表
- • 审批决策记录
重要性:⭐⭐⭐(中)
丢失后需要重新审批常用命令。
6. 沙箱数据
位置:~/.openclaw/sandboxes/
包含:
- • 沙箱工作区
- • 容器状态
重要性:⭐⭐(低)
通常是临时数据,可以重建。
备份策略
完整备份
备份整个 ~/.openclaw/ 目录:
# 创建备份
tar -czf openclaw-backup-$(date +%Y%m%d).tar.gz ~/.openclaw/
# 排除日志(可选,日志通常很大且可以重建)
tar -czf openclaw-backup-$(date +%Y%m%d).tar.gz \
--exclude='*.log' \
~/.openclaw/配置和凭证备份(最小化)
如果只需要备份核心数据:
# 创建最小化备份
tar -czf openclaw-essential-$(date +%Y%m%d).tar.gz \
~/.openclaw/openclaw.json \
~/.openclaw/credentials/ \
~/.openclaw/agents/*/agent/auth-profiles.json \
~/.openclaw/exec-approvals.json会话数据备份
会话数据可能很大,可以单独备份:
# 备份会话数据
tar -czf openclaw-sessions-$(date +%Y%m%d).tar.gz \
~/.openclaw/agents/*/sessions/自动化备份
使用 Cron 定期备份:
# 每天凌晨 3 点备份
openclaw cron add \
--name "Daily Backup" \
--cron "0 3 * * *" \
--session isolated \
--message "创建 OpenClaw 备份并上传到云存储" \
--announce备份脚本示例:
#!/bin/bash
BACKUP_DIR="/backups/openclaw"
DATE=$(date +%Y%m%d)
RETENTION_DAYS=30
# 创建备份
tar -czf "$BACKUP_DIR/openclaw-$DATE.tar.gz" ~/.openclaw/
# 上传到云存储(示例:AWS S3)
aws s3 cp "$BACKUP_DIR/openclaw-$DATE.tar.gz" s3://my-backup-bucket/openclaw/
# 清理旧备份
find "$BACKUP_DIR" -name "openclaw-*.tar.gz" -mtime +$RETENTION_DAYS -delete备份存储建议
3-2-1 备份原则
- • 3 份副本:原始数据 + 2 份备份
- • 2 种介质:本地磁盘 + 云存储
- • 1 份异地:至少一份备份在物理上不同的位置
推荐方案
- 1. 本地备份
- :
- • 外部硬盘
- • NAS(网络存储)
- • Time Machine(macOS)
- 2. 云备份
- :
- • AWS S3 / Google Cloud Storage
- • Dropbox / Google Drive
- • 专用备份服务(Backblaze B2)
- 3. 版本控制
- :
- • 配置文件可以用 Git 管理
- • 敏感数据使用 Git 加密工具(git-crypt)
恢复流程
完整恢复
当需要在新机器上恢复或完全重建时:
# 1. 安装 OpenClaw
npm install -g openclaw
# 2. 停止 Gateway(如果正在运行)
openclaw gateway stop
# 3. 恢复备份
tar -xzf openclaw-backup-20260405.tar.gz -C ~/
# 4. 检查权限
chmod 700 ~/.openclaw
chmod 600 ~/.openclaw/openclaw.json
chmod -R 600 ~/.openclaw/credentials/*
# 5. 启动 Gateway
openclaw gateway
# 6. 验证状态
openclaw status --deep部分恢复
仅恢复配置:
# 恢复配置文件
cp openclaw.json ~/.openclaw/
# 重启 Gateway
openclaw gateway restart仅恢复凭证:
# 恢复凭证目录
cp -r credentials ~/.openclaw/
# 恢复授权列表
cp exec-approvals.json ~/.openclaw/仅恢复会话:
# 恢复会话数据
cp -r sessions ~/.openclaw/agents/<agentId>/
# 重启 Gateway 使会话索引生效
openclaw gateway restart灾难恢复场景
场景1:配置文件损坏
症状:Gateway 无法启动,报错配置错误
恢复步骤:
- 1. 从备份恢复
openclaw.json - 2. 如果备份也损坏,使用默认配置重建:
openclaw config init - 3. 逐步重新配置
场景2:凭证丢失
症状:频道连接失败,认证错误
恢复步骤:
- 1. 从备份恢复凭证目录
- 2. 如果备份不可用,重新配对设备:
openclaw devices list
openclaw devices approve <requestId> - 3. 重新配置 API 密钥
场景3:会话数据损坏
症状:Agent 行为异常,会话历史丢失
恢复步骤:
- 1. 停止 Gateway
- 2. 从备份恢复会话数据
- 3. 如果备份不可用,重置会话:
rm ~/.openclaw/agents/<agentId>/sessions/*.jsonl - 4. 重新启动 Gateway,会话会在下次交互时重建
场景4:完整系统重建
症状:硬件故障,需要在新机器上重建
恢复步骤:
- 1. 在新机器上安装 OpenClaw
- 2. 恢复完整备份
- 3. 检查并更新配置(如主机名、路径变化)
- 4. 重新配对需要重新批准的设备
- 5. 验证所有功能正常
最佳实践
定期备份
- • 每日:自动备份到本地或云存储
- • 每周:完整备份到外部介质
- • 每月:验证备份可恢复
备份验证
定期测试备份是否可用:
# 测试备份完整性
tar -tzf openclaw-backup-20260405.tar.gz > /dev/null && echo "Backup OK"
# 定期恢复测试(在隔离环境)
mkdir -p /tmp/openclaw-test
tar -xzf openclaw-backup-20260405.tar.gz -C /tmp/openclaw-test敏感数据保护
- • 备份文件加密:
gpg -c openclaw-backup-20260405.tar.gz - • 使用强密码
- • 密钥和密码分开存储
文档记录
记录以下信息:
- • 备份位置和命名规则
- • 恢复步骤
- • 重要配置的特殊说明
- • 紧急联系人/支持渠道
总结
数据保护是运维的基础:
- • 识别关键数据:配置、凭证、会话、工作区
- • 制定备份策略:完整备份 + 最小化备份 + 自动化
- • 遵循 3-2-1 原则:多副本、多介质、异地存储
- • 定期测试恢复:确保备份可用
- • 保护敏感数据:加密、权限控制
备份不是一次性任务,而是持续的过程。投入时间建立可靠的备份策略,可以在灾难发生时节省大量时间和精力。
下一期,我们将探讨 高级配置——OpenClaw 的进阶功能和调优技巧。
夜雨聆风