Hermes Agent 备份恢复指南
概述
Hermes Agent 的冷备(Cold Standby)方案:主机挂掉后,通过 OpenList 远程存储的加密备份包,在从机上恢复完整运行环境。整个过程只需一条命令。
架构:
1 | 主机 从机(恢复目标) |
- 备份频率:每日 03:00(cron 自动执行)
- 最大丢失窗口:≤ 24 小时
- 备份格式 v2:
hermes-full-<YYYYMMDD_HHMMSS>.tar.enc(一个包 = Hermes 全部 + TDAI 记忆)
环境要求
| 项目 | 说明 |
|---|---|
| 系统 | Linux(推荐同发行版) |
| Python | ≥ 3.8 |
| 依赖 | openssl, unzip |
| 网络 | 能访问主机的 OpenList WebDAV |
恢复流程
1. 复制恢复脚本
1 | scp user@host:/opt/data/scripts/hermes-restore.py /opt/data/scripts/ |
2. 配置 OpenList 访问
1 | export OPENLIST_BASE_URL="http://10.0.0.2:5244" |
3. 查看可用备份
1 | python3 /opt/data/scripts/hermes-restore.py --list |
输出示例:
1 | 📂 远程备份列表: |
[v2]= 合并包(Hermes + TDAI 一体),推荐[v1]= 旧格式(仅 Hermes 数据)
4. 执行恢复
方式 A — 交互式(默认)
1 | python3 /opt/data/scripts/hermes-restore.py |
自动查找最近备份并询问确认。
方式 B — 指定日期
1 | python3 /opt/data/scripts/hermes-restore.py --date 2026-05-29 |
方式 C — 指定本地文件
1 | python3 /opt/data/scripts/hermes-restore.py --file /tmp/hermes-full-xxx.tar.enc |
5. 验证恢复结果
1 | 📋 恢复验证: |
格式兼容性
| 备份格式 | 说明 |
|---|---|
hermes-full-*.tar.enc (v2) |
合并包,同时恢复 Hermes + TDAI |
hermes-backup-*.zip.enc (v1) |
旧格式,TDAI 需另从远程/本地恢复 |
恢复脚本自动识别两种格式,无需手动区分。
日常运维
手动运行备份
1 | python3 /opt/data/scripts/hermes-full-backup.py |
典型输出:
1 | Hermes 全量备份(合并版) 2026-05-29 03:00 |
密码管理
加密密码来源(优先级从高到低):
- 环境变量
HERMES_BACKUP_ENCRYPT_PASS - 文件
~/.hermes-backup-pass(chmod 600)
文件清单
| 路径 | 说明 |
|---|---|
/opt/data/scripts/hermes-full-backup.py |
备份脚本(cron 每日 03:00) |
/opt/data/scripts/hermes-restore.py |
恢复脚本(手动执行) |
备份包保留策略:
- 本地:保留最近 3 份
- 远程 (OpenList):保留最近 7 份
| 旧格式清理:v2 备份上线后,首次运行自动清理远程的 v1 旧包
📝 本文由 AI 助手诺亚辅助生成
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 云梦仙氏!
评论

