最稳妥方法是手动编辑 .condarc 文件或用 conda config --add envs_dirs 添加新路径(非 --set),并确保目标目录存在且有写权限;同时需同步修改 pkgs_dirs 并预建文件夹、配置权限,否则 Conda 会静默回退至默认 C 盘路径。

直接改 .condarc 文件最稳妥,别信 Anaconda Navigator 里“编辑环境路径”这种界面操作——它不生效,纯误导。
怎么查当前虚拟环境路径在哪
终端里运行:conda config --show envs_dirs
输出类似:
envs_dirs: - C:\Users\Alice\.conda\envs - D:\anaconda3\envs
第一行就是默认创建位置。如果没输出或只有一行且是 C 盘路径,说明你还没配过,正中问题核心。
改路径必须用 conda config --add,不是 --set
--set 会覆盖整个列表,导致原有路径(比如 base 环境所在路径)丢失,后续 conda activate base 可能失败。--add 才是安全追加,且 Conda 默认优先用列表第一个路径。
Anaconda 2024.10-1 官方 Windows x86_64 安装包下载,来自 Anaconda 官方归档目录,适合需要安装旧版 Anaconda Distribution 的用户。
- 把新路径加到最前面(最高优先级):
conda config --add envs_dirs D:\CondaEnvs - 确认路径存在,且你有写权限(Windows 下右键文件夹 → 安全 → 编辑 → 给 Users 或你的账户勾选“完全控制”)
- 执行后再次
conda config --show envs_dirs,新路径应排在第一行
为什么改完路径后 conda create -n test 还在 C 盘?
常见原因有三个,按顺序排查:
-
D:\CondaEnvs目录不存在,Conda 不会自动创建, silently fallback 到默认路径 —— 务必手动新建空文件夹 - 权限不足:即使目录存在,若没有写入权限,Conda 会静默降级使用下一个
envs_dirs路径(通常是 C 盘那个) - 你正在用旧的 base 环境启动终端(比如从旧 Anaconda Prompt 启动),而该终端继承了旧配置缓存 —— 关闭所有终端,新开一个再试
pkgs_dirs 也得一起改,否则包缓存还在 C 盘
虚拟环境路径挪走了,但包下载缓存(pkgs)还在 C:\Users\...\AppData\Local\conda\conda\pkgs,长期下来照样吃 C 盘空间。
- 同样用
--add:conda config --add pkgs_dirs D:\CondaPkgs - 提前建好
D:\CondaPkgs文件夹,并赋予写权限 - 改完后运行
conda clean -p清掉旧缓存(可选,但推荐)
真正麻烦的不是改配置,而是权限和路径预创建——这两步漏掉,90% 的“修改失败”都发生在这里。

















