【拯救C盘】一文搞懂Windows修改Anaconda默认的虚拟环境存放路径及其原理


风晓
风晓 2024-01-07 10:29:29 50956 赞同 0 反对 0
分类: 资源 标签: Windows
在安装了Anaconda之后,创建的虚拟环境可能会默认保存在 C:\ProgramData\Anaconda3\envs或C:\Users\用户名\.conda\envs路径下,但C盘的存储空间很宝贵,由于每个虚拟环境的大小可能达到n个GB,稍不注意就会遇到C盘红色警告。

 

解决思路
方案1: 每次创建虚拟环境时手动指定存放路径
方案2:修改Anaconda默认的虚拟环境存放路径
很显然,方案2更讨喜。
经分析(如下图所示),可以知道在Anaconda 目录下主要是envs和pkgs这两个文件夹占用了空间,这正是虚拟环境的目录和包目录,若可以把这两个文件夹放到其他盘,则问题可得以解决。


修改配置前
在未进行任何配置之前,当我们创建新的虚拟环境时,虚拟环境的存放路径在C盘,如下图所示:


修改配置的步骤
1. 在C盘以外的磁盘创建2个目录
以我在D盘为例:


2. 编辑.condarc文件
.condarc文件默认存放在当前用户目录下,即C:\Users\用户名\目录下,若该目录下不存在该文件,可手动创建一个。在该文件中添加以下配置信息,分别将envs和pkgs文件夹指向新创建的路径和旧的路径

envs_dirs: [D:\Anaconda3\envs, C:\ProgramData\Anaconda3\envs]
pkgs_dirs: [D:\Anaconda3\pkgs, C:\ProgramData\Anaconda3\pkgs]
1
2
下图中标号为1的是在步骤1中分别创建的2个文件路径,标号为2的是当前已有的虚拟环境存放的文件路径。一定要将新创建的文件路径放在[]列表的第一位。

原因是:系统在读取路径信息时,默认选择列表中的第一个路径作为虚拟环境存放的路径,若第一个路径不存在,才会继续寻找后面的路径,将当前虚拟环境存放路径也加进来是为了以防第一个路径被误删,创建新的虚拟环境时,依然可以存放在自己指定的目录中,也是为了不妨碍当前已有的虚拟环境的使用,当然你也可以添加更多其他的备选路径。

 

你也可以打开Anaconda Navigator点击左上角的 File -> Preference按照下图标注的序号进行该步骤的配置,效果是一样一样的。


修改配置后
在修改了.condarc文件后,当我们创建新的虚拟环境时,虚拟环境的存放路径已经变为了D盘,如下图所示:


一个有用的思考:是否可以将已有的虚拟环境移动到新的路径中?
答案:可以,但有注意事项

测试步骤1:首先将.condarc中添加的配置信息删掉,执行conda create -n test2在默认配置下创建一个名为test2的虚拟环境,该虚拟环境自然就存放在了默认的C盘。此时执行conda env list可以看到test2虚拟环境在C盘。

测试步骤2:将C:\ProgramData\Anaconda3\envs下的test2文件夹剪切并粘贴到D:\Anaconda3\envs目录下,再执行conda env list命令,可以看到test2虚拟环境已不存在。很容易理解的是:由于.condarc文件未添加任何配置信息,test2文件夹已被转移到其他路径下,对于系统来说,相当于test2文件夹已被删掉,所以该虚拟环境不会再显示在列表中。

测试步骤3:将.condarc配置文件恢复到以下图1状态后,重新执行conda env list命令,可以看到test2虚拟环境,且此时它的路径信息已显示为D:\Anaconda3\envs\test。


结论:
anaconda不仅仅在创建新的虚拟环境时会读取.condarc文件的配置信息。因此,倘若你想把现有的虚拟文件转移到别的磁盘目录下来拯救苟活着的C盘,请确保该目录在.condarc文件中存在,否则anaconda将会找不到转移后的虚拟环境。

如果您发现该资源为电子书等存在侵权的资源或对该资源描述不正确等,可点击“私信”按钮向作者进行反馈;如作者无回复可进行平台仲裁,我们会在第一时间进行处理!

评价 0 条
风晓L1
粉丝 1 资源 2038 + 关注 私信
最近热门资源
银河麒麟桌面操作系统备份用户数据  125
统信桌面专业版【全盘安装UOS系统】介绍  120
银河麒麟桌面操作系统安装佳能打印机驱动方法  112
银河麒麟桌面操作系统 V10-SP1用户密码修改  105
最近下载排行榜
银河麒麟桌面操作系统备份用户数据 0
统信桌面专业版【全盘安装UOS系统】介绍 0
银河麒麟桌面操作系统安装佳能打印机驱动方法 0
银河麒麟桌面操作系统 V10-SP1用户密码修改 0
作者收入月榜
1

prtyaa 收益393.62元

2

zlj141319 收益218元

3

1843880570 收益214.2元

4

IT-feng 收益209.03元

5

风晓 收益208.24元

6

777 收益172.71元

7

Fhawking 收益106.6元

8

信创来了 收益105.84元

9

克里斯蒂亚诺诺 收益91.08元

10

技术-小陈 收益79.5元

请使用微信扫码

加入交流群

请使用微信扫一扫!