Conda修改虚拟环境目录和缓存目录

4,747 阅读2分钟

一. 问题描述

Conda安装在D盘,但是C盘随着虚拟环境的创建还是在不断减小,通过conda info命令查看,发现C:\Users\xxx\.conda\envs为默认的环境文件目录,该目录下存放了很多的虚拟环境文件。

conda info

image.png

二. 修改默认路径

网上有两种方法用于修改Conda默认虚拟环境路径和缓存路径

1. 命令修改法

conda config --remove envs_dirs newdir #删除环境路径newdir
conda config --remove pkgs_dirs newdir #删除缓存路径newdir

conda config --add envs_dirs dir#添加环境路径newdir
conda config --add pkgs_dirs dir#添加缓存路径newdir

如遇报错CondaKeyError: 'envs_dirs': key 'envs_dirs' is not in the config file,说明你在安装Conda的时候勾选的是All User而不是Just Me

2. 配置文件修改法

Conda的配置文件通过conda info可以查看,默认为C:\Users\xxx\.condarc,调整配置文件内env_dirs和pkgs_dirs配置项的顺序,将D盘目录放在第一位

channels:
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
  - defaults
env_dirs:
  - D:\ProgramData\Anaconda3\pkgs
  - C:\Users\xxx\.conda\pkgs
  - C:\Users\xxx\AppData\Local\conda\conda\pkgs
pkgs_dirs:
  - D:\ProgramData\Anaconda3\env
  - C:\Users\xxx\.conda\env
  - C:\Users\xxx\AppData\Local\conda\conda\envs

如遇修改后通过conda info查看设置并未生效,说明你在安装Conda的时候勾选的是All User而不是Just Me

三. 重装可能遇到的问题

1. 无法激活虚拟环境

问题1:使用conda activate xxx激活虚拟环境时报错IMPORTANT: You may need to close and restart your shell after running 'conda init'.

问题2:每次打开shell最上方都会出现# bash: /d/ProgramData/Anaconda3/Scripts/conda.exe No such file or directory

如果只存问题1则可能是退出异常导致,可以使用以下命令解决

1.  source activate  #重新激活
1.  conda deactivate #退出激活

如果问题1和问题2同时存在,则不单单是退出异常导致的,重新安装后本地bash未更新,修改C:\Users\Owinfo.bash_profile文件中的相应位置为你最新安装地址即可。

image.png