Conda创建环境时‘solving environment’卡住及.condarc位置异常求助
解决Conda环境创建卡在
solving environment的方案 1. 手动创建缺失的.condarc并优化源配置
conda info显示的.condarc路径不存在时,手动创建并配置高效的源规则,这是解决求解缓慢的核心步骤:
- 创建.condarc文件:
touch /PHShome/ys738/.condarc - 编辑文件写入以下配置(优先使用国内镜像源+严格通道优先级):
说明:channels: - conda-forge - bioconda - defaults channel_priority: strict show_channel_urls: true default_channels: - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2 custom_channels: conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloudchannel_priority: strict会强制优先使用前面通道的包,大幅减少版本冲突的求解时间;国内镜像源能提升集群环境下的元数据拉取速度。
2. 简化环境配置文件,降低求解复杂度
如果env.yml中包数量过多或版本限制过严,会导致conda求解陷入死循环:
- 移除
env.yml中非必要的包版本约束,仅保留核心依赖(如Python版本) - 拆分创建流程:先创建基础环境,再逐步添加包:
# 先创建仅含Python的基础环境 conda create -p ./env python=3.9 # 把env.yml中的包提取为requirements.txt,再批量安装 conda install -p ./env --file requirements.txt
3. 使用Mamba替代Conda执行环境创建
Mamba是Conda的C++重写实现,求解速度比原生Conda快10-100倍,尤其适合复杂环境:
- 先在base环境安装Mamba:
conda install -n base mamba - 用Mamba创建环境:
mamba env create -f env.yml -p ./env
4. 清理Conda缓存,修复元数据异常
缓存的过期元数据可能导致求解卡住,清理后重新拉取:
conda clean -a
清理完成后重新执行环境创建命令。
5. 验证集群网络与源的连通性
集群可能存在网络防火墙限制,导致无法正常访问源:
- 测试镜像源的连通性:
若返回curl -I https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/HTTP/1.1 200 OK则网络正常,否则联系集群管理员开放对应域名的访问权限。
内容的提问来源于stack exchange,提问作者Yeping Sun
相关产品推荐
相关产品推荐

