Fedora 43上的ComfyUI:双虚拟环境 + 一键启动(2026年3月)

配图
Fedora 43 上的 ComfyUI:两个虚拟环境 + 一键启动(2026年3月)
日期:2026年3月
操作系统:Fedora 43
目标:保留两个 Python 虚拟环境(例如 3.12 + 3.14)以实现兼容性,但通过一个干净、轻量级的设置自动启动 ComfyUI。
企业交付操作系统
本指南是企业交付操作系统系列的一部分。使用这些分类中心来导航整个技术栈(基础设施 → 工作流 → 治理)。
架构企业交付操作系统的参考架构。
DevOps 与运行时部署、服务、端口、运行时操作和可重复性。
AI 工具与自动化本地 AI 技术栈、编排、自动化和稳定的工作流。
安全与合规本地 AI 系统的权限、加固和安全默认设置。
可观测性与性能性能调优、监控、VRAM/RAM 预算和稳定性。
为什么保留两个虚拟环境?
AI 工具发展迅速。一些节点和 wheel 包落后于最新的 Python 版本,而另一些则需要它。
- Python 3.12 虚拟环境 → “稳定且兼容”(TensorRT/LW wheels/Lightning 通常更适配)
- Python 3.14 虚拟环境 → 拥有最新功能,但缺少更多 wheel 包 / 导入问题更常见
规则:切勿在虚拟环境之间混合安装。始终从你打算使用的虚拟环境中运行 ComfyUI。
设置:每个虚拟环境一个脚本
创建一个小的启动器脚本,它:
1) 切换到 ComfyUI 文件夹
2) 激活选定的虚拟环境
3) 在 localhost 上运行 ComfyUI
1) 为 Python 3.12 虚拟环境创建一个启动器
mkdir -p ~/.local/bin
cat > ~/.local/bin/comfyui-start-312.sh <<'EOF'
#!/usr/bin/env bash
set -euo pipefail
cd /home/x/ai/ComfyUI
source /home/x/ai/ComfyUI/.venv312/bin/activate
exec python main.py --listen 127.0.0.1 --port 8188
EOF
chmod +x ~/.local/bin/comfyui-start-312.sh
2) (可选)为 Python 3.14 虚拟环境创建一个启动器
cat > ~/.local/bin/comfyui-start-314.sh <<'EOF'
#!/usr/bin/env bash
set -euo pipefail
cd /home/x/ai/ComfyUI
source /home/x/ai/ComfyUI/.venv/bin/activate
exec python main.py --listen 127.0.0.1 --port 8189
EOF
chmod +x ~/.local/bin/comfyui-start-314.sh
现在你可以不加思索地运行任一版本:
- ~/.local/bin/comfyui-start-312.sh
- ~/.local/bin/comfyui-start-314.sh
自动启动:systemd 用户服务(最佳选项)
这会在登录时启动 ComfyUI,崩溃时重启,并保持最简化(无需 root,无重型包装器)。
1) 为 3.12 创建用户服务
mkdir -p ~/.config/systemd/user
cat > ~/.config/systemd/user/comfyui312.service <<'EOF'
[Unit]
Description=ComfyUI (Python 3.12 venv)
After=network.target
[Service]
Type=simple
WorkingDirectory=/home/x/ai/ComfyUI
ExecStart=/home/x/.local/bin/comfyui-start-312.sh
Restart=on-failure
RestartSec=2
Environment=PYTHONUNBUFFERED=1
[Install]
WantedBy=default.target
EOF
2) 启用 + 启动
systemctl --user daemon-reload
systemctl --user enable --now comfyui312.service
systemctl --user status comfyui312.service --no-pager
3) 日志(调试)
journalctl --user -u comfyui312.service -f
(如果你也需要 3.14 服务,请重复上述步骤,使用 comfyui314.service 和另一个脚本。)
一键 GUI:桌面启动器(在浏览器中打开 ComfyUI)
这会在你的菜单中创建一个应用条目。点击它:
1) 启动服务
2) 在浏览器中打开 UI
mkdir -p ~/.local/share/applications
cat > ~/.local/share/applications/comfyui.desktop <<'EOF'
[Desktop Entry]
Type=Application
Name=ComfyUI (Local)
Comment=Start ComfyUI and open the UI
Exec=sh -lc 'systemctl --user start comfyui312.service; xdg-open http://127.0.0.1:8188'
Icon=utilities-terminal
Terminal=false
Categories=Graphics;AI;
EOF
避免常见错误的注意事项
- 如果你看到 pip 安装到 ~/.local/...,说明你不在正确的虚拟环境中(或者你没有激活它)。
- 如果节点因 pkg_resources 缺失而失败 → 在选定的虚拟环境内安装 setuptools:source /home/x/ai/ComfyUI/.venv312/bin/activatepython -m pip install -U pip setuptools wheel
- TensorRT 节点在较新的 Python 构建上失败是正常的:如果你不需要它,请禁用该自定义节点文件夹。
后续阅读
如果你想深入了解,以下指南与上述设置直接相关:
ComfyUI节点:依赖修复(Lightning、pkg_resources、ffmpeg)修复常见的节点导入失败问题,确保您的ComfyUI堆栈在更新过程中保持稳定。
两个虚拟环境,两个端口,零混淆干净地运行多个ComfyUI实例:端口、服务和可预测的配置文件。
VRAM预算:实际减少内存不足(OOM)的方法实用的VRAM策略:注意力模式、模型大小、批处理以及实际限制。
本地AI加固:权限、沙箱和安全默认设置降低本地AI系统的风险:文件权限、服务隔离和更安全的默认设置。
权衡(快速概览)
systemd用户服务
- ✅ 稳定、自动重启、低开销、干净
- ⛔ 需要一次性初始设置
桌面启动器
- ✅ 一键式工作流程
- ⛔ 仍然依赖于浏览器用户界面
两个虚拟环境
- ✅ 两全其美(兼容性+最新版本)
- ⛔ 您必须保持端口/服务分离以避免混淆
Related Articles

Laravel 12 Custom CMS with Filament 3: The Expert Workflow
A detailed look at the synergies between Laravel 12 and Filament 3 for creating customized Content Management Systems. Experts analyze the innovative workflow, advantages, disadvantages, and the challenge of the Jetstream workflow.

Ubuntu图形堆栈转型:混合GPU启动崩溃、Wayland风险与稳定部署实践
Ubuntu桌面版升级可能导致启动卡顿、登录会话丢失以及渲染不稳定等问题,在英特尔与NVIDIA混合显卡系统中尤为突出。本文深入解析图形堆栈的底层变更、问题产生的根源,并指导如何通过长期支持版基线及经过验证的驱动策略安全部署Ubuntu系统。
Using Cygwin’s bash Babun terminal in a JetBrains IDE
Using Cygwin’s bash Babun terminal in a JetBrains IDE
install-pcl-library-on-python-ubuntu-19-10-point-cloud-librar
how-to-make-sql-modeno_engine_substitution-permanent-in-mysql-my-cnf
PostgreSQL 14 Ubuntu Server 23.04
PostgreSQL 14 Ubuntu Server 23.04

Database Marketing – Modern Approach for Customer Relationships
Modern overview of database marketing: from data strategy and technical architecture to automation, GDPR and best practices for sustainable customer relationships.

理解和解决npm ERESOLVE依赖冲突
正确解决npm ERESOLVE对等依赖冲突的方法:识别真正的版本不匹配,对齐版本,安全使用覆盖选项,并了解何时更适合使用pnpm或Yarn。

优化代码质量:使用ESLint与Prettier进行测试
在现代软件开发中,保持一致的代码质量和风格至关重要。ESLint与Prettier提供了强大的组合方案,能够自动化这些关键环节,确保代码库的整洁性、可读性,并遵循既定标准。本文将深入探讨这两款工具如何无缝融入测试工作流,从而提升开发者的工作效率与项目的可维护性。

2026年新兴Linux趋势:塑造服务器基础设施的未来
探索2026年Linux关键趋势:从Kubernetes主导地位与不可变发行版,到人工智能集成与eBPF安全技术。

tensorflow

Prisma 7 多数据库架构:专家深度解析
复杂数据环境的管理需要现代化的架构。Prisma 7提供多数据库集成的高级功能,并应对多语言持久化带来的挑战。