mamba 安装后 Conda 环境名称丢失

Ebe*_*res 6 linux ubuntu virtualenv conda mamba

安装mamba并创建环境后,我以前的conda环境的名称全部丢失了。我可以看到他们的路径,甚至可以激活它们:

conda activate /environment/path

这就是我这样做时的样子:

conda env list

输出:

 conda environments:

base                  *  /home/emalv/mambaforge3
moose                    /home/emalv/mambaforge3/envs/moose
                         /home/emalv/miniconda3
                         /home/emalv/opt/miniconda3
                         /home/emalv/opt/miniconda3/envs/ase
                         /home/emalv/opt/miniconda3/envs/deepmd
                         /home/emalv/opt/miniconda3/envs/env_soap
                         /home/emalv/opt/miniconda3/envs/moose
                         /home/emalv/opt/miniconda3/envs/pfmod
                         /home/emalv/opt/miniconda3/envs/pmg
                         /home/emalv/opt/miniconda3/envs/pycalphad-garces
Run Code Online (Sandbox Code Playgroud)

我尝试激活名为“pycalphad-garces”的环境,但它无法使用标准:

conda activate pycalphad-garces

得到这个:输出:

EnvironmentNameNotFound: Could not find conda environment: pycalphad-garces
You can list all discoverable environments with `conda info --envs`.
Run Code Online (Sandbox Code Playgroud)

我希望激活环境。我可以通过执行以下操作来激活此环境:

conda activate /home/emalv/opt/miniconda3/envs/pycalphad-garces

这就是我的 .bashrc 关于 conda 初始化的样子:

# >>> conda initialize >>>                                                      
# !! Contents within this block are managed by 'conda init' !!                  
__conda_setup="$('/home/emalv/mambaforge3/bin/conda' 'shell.bash' 'hook' 2> /dev/null)"
if [ $? -eq 0 ]; then                                                           
    eval "$__conda_setup"                                                       
else                                                                            
    if [ -f "/home/emalv/mambaforge3/etc/profile.d/conda.sh" ]; then            
        . "/home/emalv/mambaforge3/etc/profile.d/conda.sh"                      
    else                                                                        
        export PATH="/home/emalv/mambaforge3/bin:$PATH"                         
    fi                                                                          
fi                                                                              
unset __conda_setup                                                             
                                                                                
if [ -f "/home/emalv/mambaforge3/etc/profile.d/mamba.sh" ]; then                
    . "/home/emalv/mambaforge3/etc/profile.d/mamba.sh"                          
fi                                                                              
# <<< conda initialize <<<         
Run Code Online (Sandbox Code Playgroud)

有什么建议如何取回名称并能够使用它们激活吗?

谢谢大家

小智 6

您需要将系统指向现有环境,在我的例子中为“/Users/fk/miniconda3/envs/”。尝试运行这个:

conda config --append envs_dirs /Users/fk/miniconda3/envs/
Run Code Online (Sandbox Code Playgroud)

之后,mamba 和 conda 都可以用来激活环境。