Debian系统安装Hermes Agent时需先安装python3.11-distutils以修复“ensurepip is disabled”错误,再执行python3.11 -m venv ~/.hermes/venv初始化虚拟环境,最后通过source激活并验证pip --version及升级操作确认修复成功。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

在 Debian 系统中安装 Hermes Agent 时,执行 python3.11 -m venv ~/.hermes/venv 报错 “ensurepip is disabled”,导致虚拟环境无法初始化 pip,后续所有依赖安装全部中断,这是 Debian/Ubuntu 系统默认禁用 ensurepip 的典型表现,必须手动补全 distutils 支持才能启用 pip。
确认系统 Python 版本与 venv 模块状态
先检查当前系统是否已安装 Python 3.11 运行时:运行 python3.11 --version,输出应为类似 3.11.9 的版本号;若命令不存在,说明尚未安装 Python 3.11,需先执行 sudo apt update && sudo apt install -y python3.11 python3.11-venv python3.11-dev。
验证 venv 模块能否调用:运行 python3.11 -m venv --help,若返回帮助信息说明模块存在;若提示 ModuleNotFoundError: No module named 'venv',则需重装 python3.11-venv 包。
修复 ensurepip 缺失的核心操作
方法一:安装 distutils 支持包(最直接有效)
执行 sudo apt install -y python3.11-distutils。这一步是关键,【Debian 系统中 distutils 是 ensurepip 的底层依赖,缺它 pip 就无法注入虚拟环境】。安装完成后,再次运行 python3.11 -m venv ~/.hermes/venv,此时应不再报 “ensurepip is disabled” 错误。
方法二:手动启用 ensurepip(仅当方法一无效时备用)
进入 Python 3.11 解释器:运行 python3.11,然后输入以下两行代码:
import sysconfigsysconfig.get_path("stdlib")
记下输出路径(如 /usr/lib/python3.11),退出解释器后执行:sudo cp -r /usr/lib/python3.11/ensurepip ~/.hermes/venv/lib/python3.11/。该操作强行复制 ensurepip 模块到待建环境目录,但仅适用于已创建空 venv 目录的场景,不推荐作为首选。
验证 pip 是否真正可用
第一步:激活虚拟环境 → source ~/.hermes/venv/bin/activate。
第二步:检查 pip 是否就位 → pip --version,预期输出包含 python 3.11 且路径指向 ~/.hermes/venv/bin/pip。
第三步:测试基础安装能力 → pip install --upgrade pip setuptools。如果命令成功执行且无权限或连接错误,说明 ensurepip 已完全修复;若仍报 externally-managed-environment,说明当前 shell 正在使用系统 pip 而非 venv 内 pip,需确认是否已正确 source 激活脚本。


















