ModuleNotFoundError: No module named ‘pkg_resources’

用户在 Linux 系统(如 Linux Mint、Ubuntu)上运行 Stable Diffusion WebUI 的自动安装脚本 webui.sh 时,遇到 ERROR: Cannot activate python venv, aborting... 错误,导致启动失败。部分用户已安装 py

ModuleNotFoundError: No module named 'pkg_resources'

ModuleNotFoundError: No module named ‘pkg_resources’

快速结论:此报错通常出现在 Stable Diffusion WebUI 的自动安装脚本无法正确创建或激活 Python 虚拟环境时。优先排查 python3-venv 是否安装,并手动运行 python3 -m venv venv/ 重新生成虚拟环境。

问题场景

用户在 Linux 系统(如 Linux Mint、Ubuntu)上运行 Stable Diffusion WebUI 的自动安装脚本 webui.sh 时,遇到 ERROR: Cannot activate python venv, aborting... 错误,导致启动失败。部分用户已安装 python3-venv 但仍出现此问题。

报错原文

ERROR: Cannot activate python venv, aborting...
bash: venv/bin/activate: No such file or directory

原因分析

可能原因如下:

  • python3-venv 包未安装或版本不匹配。
  • 虚拟环境目录 venv/ 未正确生成,导致缺少 bin/activate 文件。
  • 系统 Python 版本与 WebUI 期望的版本不一致(如本地 Python 3.10,但 venv 是 Python 3.8 构建的)。
  • ensurepip 组件缺失或禁用,导致 python3 -m venv venv/ 执行失败。
  • 权限问题(文件归属或目录权限不足)。

环境排查

  • 确认 Python 版本:python3 --version
  • 确认 python3-venv 已安装:python3 -c 'import venv'(无报错表示正常)
  • 确认虚拟环境目录 venv/ 存在且包含 bin/activate
  • 检查 ensurepip 是否可用:python3 -Im ensurepip --upgrade --default-pip
  • 检查文件权限:ls -la venv/

解决步骤

  1. 安装 python3-venv(如果缺失)
    sudo apt update
    sudo apt install python3-venv
  2. 删除旧的 venv 目录
    cd stable-diffusion-webui
    rm -rf venv
  3. 手动创建虚拟环境(使用系统 Python):
    python3 -m venv venv/

    注意:如果提示 ensurepip 不可用,可尝试添加 --without-pip 参数:

    python3 -m venv venv/ --without-pip

    若权限不足,添加 sudo

    sudo python3 -m venv venv/
  4. 验证虚拟环境已生成
    ls -la venv/bin/activate
  5. 重新运行 WebUI 安装脚本
    ./webui.sh

    或:

    bash webui.sh
  6. 如果仍有 Python 版本不匹配问题:为特定 Python 版本安装 -venv 包,例如 Python 3.8:
    sudo apt install python3.8-venv

    然后使用对应版本创建 venv:

    python3.8 -m venv venv/
  7. 如果存在文件权限问题:修改目录归属为当前用户:
    sudo chown -R $USER:$USER stable-diffusion-webui

    然后重新运行脚本。

验证方法

执行 source venv/bin/activate 后不报错,并看到终端提示符前出现 (venv),说明虚拟环境激活成功。然后再次运行 ./webui.sh,不再出现 Cannot activate python venv 错误,WebUI 成功启动。

参考来源

AUTOMATIC1111/stable-diffusion-webui #1120

GamsGo AI

AI 工具推荐

想把多个 AI 模型放在一个入口?

GamsGo AI 集成 ChatGPT、DeepSeek、Gemini、Claude、Midjourney、Veo 等常用模型,适合写作、绘图、视频和日常 AI 工作流。

了解 GamsGo AI

推广链接:通过此链接购买,我可能获得佣金,不影响你的价格。

celebrityanime
celebrityanime
文章: 10679

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注