本文在windows11,powershell 7上进行conda的相关操作。
# 创建环境py38,python3.8最新3.8.16版发布于2022.12.06
# 这里会显示安装包的位置,如果不对就别输入y确认
conda create --name py38 python=3.8.16
# 查看当前所有环境
conda info --env
# 查看更加完整的信息(包括环境安装路径envs directories)
conda info
# 删除py38环境(可选)
conda remove --name py38 --all
以上有个问题就是把环境装到C盘C:\Users\LJW\.conda\envs\py38
。
conda info
显示如下:
envs directories : C:\Users\LJW\.conda\envs
E:\Anaconda3\2023.03-Windows-x86_64\envs
C:\Users\LJW\AppData\Local\conda\conda\envs
每次创建环境都默认装到第一个路径C:\Users\LJW\.conda\envs
如果想装到其他盘,需要修改配置文件.condarc
(如果没有这个文件需要新建):
code "C:\Users\LJW\.condarc"
配置文件如下:
channels:
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
- defaults
envs_dirs:
- E:\Anaconda3\2023.03-Windows-x86_64\envs
这样就能让E盘路径变为首选安装位置。顺便还加了清华源。
但当新创建虚拟环境验证时,可能会发现它还是默认安装在C盘用户目录下的envs。
还需要去E盘Anaconda3
目录改下权限,右键-属性-安全-Users修改权限-完全控制(全部打勾)
#增加环境路径,实际上还是增加到C:\Users\LJW\.condarc里面
conda config --add envs_dirs E:\Anaconda3\2023.03-Windows-x86_64\envs
修改权限之后,过几分钟进sudo权限运行create虚拟环境命令即可。
但如果没有sudo权限,创建虚拟环境,就还是会装到C盘用户目录,显然这就是权限问题!
那么彻底解决的办法,就是继续修改Anaconda3
的子目录env
的权限E:\Anaconda3\2023.03-Windows-x86_64\envs
,还是右键-属性-安全-Users修改权限-完全控制(全部打勾)。即可让非sudo权限的用户写入。
看来windows修改父目录的权限并不会递归修改子目录的权限。