Hermes Agent迁移到外部硬盘的完整教程(2026)

  发布时间:2026-07-24 11:35:45   作者:Learning_By Doing   我要评论
Hermes Agent 默认将所有数据存储在 ~/.hermes/,包括程序本体(venv、node_modules)和用户数据(sessions、memories、skills 等),随着使用,这个目录会持续增长,本教程记录了如何将其迁移到外部硬盘以节省内置 SSD 空间,感兴趣的小伙伴可以了解下

背景

Hermes Agent 默认将所有数据存储在 ~/.hermes/,包括程序本体(venv、node_modules)和用户数据(sessions、memories、skills 等)。随着使用,这个目录会持续增长。本教程记录如何将其迁移到外部硬盘以节省内置 SSD 空间。

前提条件

  • 外部硬盘格式为 APFSMac OS Extended (HFS+)(不支持 NTFS/exFAT,因为需要符号链接和 Unix 权限)
  • 外部硬盘有足够可用空间(当前 Hermes 占 ~1 GB,随使用会增长)

迁移步骤

Step 1: 停止 Hermes

# 检查 Hermes 是否在运行
ps aux | grep -i hermes | grep -v grep
# 如果在运行,停止它
hermes stop
# 或者强制终止
pkill -f hermes

重要:必须在 Hermes 完全停止后再操作,否则可能导致数据损坏。

Step 2: 确认外部硬盘状态

# 查看已挂载的外部卷
ls /Volumes/

# 确认文件系统类型(必须是 APFS 或 HFS+)
diskutil info /Volumes/你的硬盘名 | grep "File System"

# 确认可用空间
df -h /Volumes/你的硬盘名

Step 3: 移动数据到外部硬盘

# 将 ~/.hermes 整体移动到外部硬盘(目录名可自定义)
mv ~/.hermes /Volumes/你的硬盘名/.hermes

为什么用 mv 而不是 cp

mv 在同一文件系统上是瞬间完成的(只改指针)。跨文件系统时等同于 cp + rm,但更简洁。

Step 4: 创建符号链接

# 在原位置创建指向外部硬盘的符号链接
ln -s /Volumes/你的硬盘名/.hermes ~/.hermes

为什么用符号链接而不是 HERMES_HOME 环境变量?

Hermes 的 Python 虚拟环境(venv)中所有脚本的 shebang 都硬编码了#!/Users/你的用户名/.hermes/hermes-agent/venv/bin/python3 这样的路径。

如果用 HERMES_HOME 指向新位置,venv 内部的路径全部断裂,导致 hermes 命令无法运行。

符号链接让系统"以为"数据还在 ~/.hermes/,所有硬编码路径都能正常解析。

Step 5: 验证

# 确认符号链接正确
ls -la ~/.hermes
# 应输出: ~/.hermes -> /Volumes/你的硬盘名/.hermes

# 确认 hermes 命令可用
hermes --version

# 确认配置文件可访问
cat ~/.hermes/config.yaml

推出外部硬盘前的操作

必须先停止 Hermes 再推出硬盘! 否则会导致:

  • 进程崩溃或挂起(无法读写数据文件)
  • macOS 可能拒绝推出硬盘(提示"磁盘正在使用中")
  • 最坏情况:数据库文件(state.db)损坏

安全推出流程

# 1. 停止 Hermes
hermes stop 2>/dev/null
pkill -f hermes 2>/dev/null

# 2. 确认没有进程在访问外部硬盘
lsof +D /Volumes/你的硬盘名/.hermes 2>/dev/null

# 如果有输出,说明还有进程在使用,需要逐一关闭或 kill
# 例如:kill <PID>

# 3. 安全推出
diskutil eject /Volumes/你的硬盘名
# 或者在 Finder 中点击推出按钮

重新插入硬盘后

插入硬盘后 Hermes 会自动恢复可用(因为符号链接会重新生效),直接运行 hermes 即可。

回滚(迁移回内置硬盘)

如果需要将数据迁回内置硬盘:

# 1. 停止 Hermes
hermes stop 2>/dev/null && pkill -f hermes 2>/dev/null

# 2. 删除符号链接
rm ~/.hermes

# 3. 移回数据
mv /Volumes/你的硬盘名/.hermes ~/.hermes

# 4. 验证
hermes --version

目录结构参考

~/.hermes/                          → 符号链接到外部硬盘
├── hermes-agent/                   (程序本体 ~1 GB)
│   ├── venv/                       (Python 虚拟环境, ~538 MB)
│   ├── ui-tui/                     (TUI 界面, ~191 MB)
│   ├── node_modules/               (Node.js 依赖, ~146 MB)
│   ├── skills/                     (内置技能)
│   └── agent/                      (核心代理逻辑)
├── skills/                         (自定义/学习到的技能, 会增长)
├── sessions/                       (会话历史, 会增长)
├── memories/                       (跨会话记忆, 会增长)
├── audio_cache/                    (语音缓存, 会增长)
├── image_cache/                    (图片缓存, 会增长)
├── config.yaml                     (配置文件)
├── SOUL.md                         (Agent 人格定义)
├── auth.json                       (API 密钥)
└── state.db                        (状态数据库)

重命名外部硬盘上的目录

如果你对外部硬盘上的目录名不满意(比如想从 hermes-data 改为 .hermes),可以随时重命名:

# 1. 停止 Hermes
hermes stop 2>/dev/null && pkill -f hermes 2>/dev/null

# 2. 删除旧的符号链接
rm ~/.hermes

# 3. 重命名外部硬盘上的目录
mv /Volumes/你的硬盘名/旧目录名 /Volumes/你的硬盘名/新目录名

# 4. 重新创建符号链接指向新名称
ln -s /Volumes/你的硬盘名/新目录名 ~/.hermes

# 5. 验证
ls -la ~/.hermes
hermes --version

注意. 开头的目录在 Finder 中默认隐藏。按 Cmd + Shift + . 可以切换显示隐藏文件。

操作记录

初次迁移 (2026-04-22)

  • 源路径: ~/.hermes/ (1.0 GB, 71213 个文件)
  • 目标路径: /Volumes/WDBlueSN5000/hermes-data/
  • 外部硬盘: WD Blue SN5000 (931 GB APFS)
  • 方案: 符号链接(~/.hermes → 外部硬盘)
  • 验证: rsync 复制后对比文件数量一致,hermes v0.10.0 正常运行

目录重命名 (2026-04-22)

  • 操作: 将外部硬盘上的 hermes-data 重命名为 .hermes
  • 步骤: 删除符号链接 → mv 重命名 → 重建符号链接
  • 最终路径: ~/.hermes/Volumes/WDBlueSN5000/.hermes
  • 验证: hermes v0.10.0 正常运行

踩坑记录:为什么不能用 HERMES_HOME 环境变量

  • 最初尝试设置 export HERMES_HOME="/Volumes/WDBlueSN5000/hermes-data" 并直接 mv 整个目录
  • 结果: hermes 命令无法运行,因为 venv 内脚本的 shebang 硬编码了 #!/Users/cc/.hermes/hermes-agent/venv/bin/python3
  • 解决: 改用符号链接方案,让所有硬编码路径透明解析到外部硬盘

以上就是Hermes Agent迁移到外部硬盘的完整教程(2026)的详细内容,更多关于Hermes Agent迁移的资料请关注脚本之家其它相关文章!

相关文章

  • Hermes Agent全平台部署运维中文安装配置手册(2026)

    本指南将教你全平台部署Hermes-Agent,从银河麒麟到macOS全覆盖,手把手Docker化或原生安装,智谱GLM与企业微信一键接入,MCP双向集成实战,安全配置与避坑指南全都有,希望对大
    2026-07-20
  • 详解Hermes多Agent实操

    本文主要介绍了Hermes多Agent实操,手把手教你配置YAML、Python派发任务,并避坑多Agent实操的6个常见陷阱,省时又省token,感兴趣的可以了解一下
    2026-07-17
  • Hermes Agent中多Profile实战小结

    本文主要介绍了Hermes Agent中多Profile实战,学会Profile机制,就能轻松创建多个独立AI实例,彻底告别配置冲突和角色混乱,立即掌握创建、切换和隔离AI角色的完整方案,让你的
    2026-07-17
  • Hermes Agent 全栈安装、配置与Web端架构深度解析(官方命令版·最终优化)

    本文给大家介绍Hermes Agent 全栈安装、配置与Web端架构深度解析,结合实例代码给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧
    2026-07-16
  • 深入理解Hermes Agent Skill 机制

    本文主要介绍了深入理解Hermes Agent Skill 机制,包含发现索引→触发加载→预处理→Prompt注入→LLM响应五个阶段,下面就详细了解这五种阶段,感兴趣的可以了解一下
    2026-07-16
  • Hermes Agent 命令行界面

    Hermes Agent 的 CLI 并非一个简单的命令行包装器,而是一个完整的终端用户界面,掌握 CLI 的全部交互细节,你才能让智能体在终端里真正"跑起来",本文主要介绍
    2026-07-15
  • Hermes Agent 上下文压缩机制分析

    Hermes Agent开发了一套智能上下文压缩系统,专门解决长对话场景下的上下文窗口限制问题,本文就来详细的介绍一下Hermes Agent 上下文压缩机制,感兴趣的 可以了解一下
    2026-07-15
  • Hermes Agent桌面版安装部署完全指南(2026年最新)

    本文是一份超详细HermesAgent桌面版安装部署指南,手把手带你搞定Windows、macOS、Linux全平台安装,点击获取极速配置技巧、核心功能拆解与WevView2报错解决方案,别错过让Age
    2026-07-14
  • Hermes Agent常用操作和命令使用速查手册

    想要一个能直接在终端里聊天的AI助手吗,HermesAgent本地命令行工具可以帮你连接多种大模型、执行终端命令、分析文件,甚至写代码,立即掌握核心命令和配置技巧,提升你的工作
    2026-07-13
  • 在Hermes Agent里搭建全中文 Honcho 记忆系统踩过的坑

    我的Hermes Agent配置了多个 profile,记忆系统选择了基于 Honcho,但是Honcho的提示词是英文的,它的API服务也是英文环境,我需要全中文流程,下面就来介绍一下搭建全中文 Ho
    2026-07-13

最新评论