Conda 报错 No module named 'conda_libmamba_solver'
诊断与修复指南
1 · 现象概览
# 打开终端时
Error while loading conda entry point: conda-libmamba-solver
(No module named 'conda_libmamba_solver')
关键环境变量 | 当前值 |
---|---|
which conda |
/home/user/anaconda3/bin/conda |
She-bang | #!/home/user/anaconda3/bin/python |
$CONDA_PREFIX |
/home/user/anaconda3 |
conda list
能列出 conda-libmamba-solver
,说明 Conda 调用的 Python 与包目录一致,但对应模块目录缺失或版本不匹配。
2 · 可能根因 🤔
根因 | 说明 |
---|---|
包目录残缺 | site-packages/conda_libmamba_solver 被误删或解压不完整 |
版本不匹配 | 例如 conda 23.x + conda-libmamba-solver 24.x 接口不兼容 |
强制加载 | .condarc 中 solver: libmamba → Conda 启动即 import 该模块 |
3 · 一键修复 ✔️
思路:先退回 classic 求解器(避免再次导入损坏模块),再 同版本重装 整套 libmamba 组件。
# ① 永久改回 classic(写入 ~/.condarc)
CONDA_SOLVER=classic conda config --set solver classic
# ② 同版本强制重装(以 conda-forge 24.5 为例)
CONDA_SOLVER=classic \
conda install -n base -c conda-forge \
"conda>=24.5,<25" \
"conda-libmamba-solver>=24.5,<25" \
"libmamba>=1.5,<2" \
"libmambapy>=1.5,<2" \
"mamba>=1.5,<2" \
--update-deps --force-reinstall -y
可选:恢复极速求解器
conda config --set solver libmamba
确认:conda info | grep solver
→ libmamba
,且已无报错。
4 · 排障速记 💡
-
救命开关
CONDA_SOLVER=classic <任何 conda 子命令>
-
版本锁定
始终保持conda
与conda-libmamba-solver
同大版本号。 -
彻底崩溃时(仅限急救):
pip install --force-reinstall "conda-libmamba-solver==24.5.*"
或用 micromamba 拉起一个干净的 base 环境。
5 · 常用命令速查
功能 | 命令 |
---|---|
查看当前 solver | `conda info --json |
临时禁用 libmamba | export CONDA_NO_USE_LIBMAMBA=1 |
清除缓存 | conda clean --index-cache --lock --tarballs --yes |
查看依赖冲突树 | mamba install <pkg> --why |