Conda 虚拟环境安装配置路径详解

目录

[1. 背景说明](#1. 背景说明)

[2. 原因分析](#2. 原因分析)

[3. 验证](#3. 验证)

[4. 如何让环境装到 E 盘](#4. 如何让环境装到 E 盘)

[✅ 方案一:显式指定 env 目录](#✅ 方案一:显式指定 env 目录)

[✅ 方案二(推荐长期使用):修改 Conda 配置](#✅ 方案二(推荐长期使用):修改 Conda 配置)

✅方案三(不推荐):手动移动已有环境


1. 背景说明

在本机(windows系统)安装了 Anaconda,安装路径为:E:\Commonly_software\Anaconda3\anaconda3

查看虚拟环境安装路径:

虚拟环境默认安装路径为:C:\Users\oyang\.conda\envs

而非Anaconda的安装路径下:E:\Commonly_software\Anaconda3\anaconda3\envs

2. 原因分析

这是 Conda 的正常行为, 原因和 Conda 的多级 env 目录设计 + Windows 默认用户目录策略 有关。

Conda 本体安装目录(base环境)→ E:\Commonly_software\Anaconda3\anaconda3

新建的虚拟环境被放到了→ C:\Users\oyang\.conda\envs\

根本原因(核心机制)

1️⃣ Conda 并不是只认一个 envs 目录

Conda 内部支持 多个环境存储位置(envs_dirs),优先级如下:

  1. 用户级 env 目录(默认)
bash 复制代码
%USERPROFILE%\.conda\envs

→ 也就是 C:\Users\oyang\.conda\envs

  1. 安装目录下的 envs
bash 复制代码
<conda_root>\envs

E:\Commonly_software\Anaconda3\anaconda3\envs

2️⃣ 为什么优先用 C 盘?

👉 这是 Conda 在 Windows 上的刻意设计

原因有三点:

✅ 原因 1:权限问题(最重要)

  • E:\Commonly_software\Anaconda3\anaconda3

    属于 程序安装目录

  • 在某些环境下(公司电脑 / UAC / 非管理员),

    • Conda 不一定能安全写入
  • 用户目录 C:\Users\oyang\.conda\envs

    • 永远有写权限

👉 为了避免"创建环境失败",Conda 默认把新环境放到用户目录

✅ 原因 2:多 Conda 共用同一批环境

如果你以后:

  • 装 Miniconda

  • 装多个 Anaconda

  • 用 VSCode / PyCharm 调用 Conda

那么:

bash 复制代码
C:\Users\oyang\.conda\envs

✅ 原因 3:官方默认策略(不是 bug)

只要你:

bash 复制代码
conda create -n xxx python=3.x

没有显式指定路径

Conda 就会用:

bash 复制代码
%USERPROFILE%\.conda\envs

3. 验证

运行:

bash 复制代码
conda config --show envs_dirs

大概率会看到类似:

bash 复制代码
envs_dirs:
  - C:\Users\oyang\.conda\envs
  - E:\Commonly_software\Anaconda3\anaconda3\envs

⚠️ 前面的优先级更高

4. 如何让环境装到 E 盘

✅ 方案一:显式指定 env 目录

bash 复制代码
conda create -p E:\Commonly_software\Anaconda3\anaconda3\envs\myenv python=3.10

激活:

bash 复制代码
conda activate E:\Commonly_software\Anaconda3\anaconda3\envs\myenv

✅ 方案二(推荐长期使用):修改 Conda 配置

envs 目录优先级改为 E 盘

bash 复制代码
conda config --set envs_dirs E:\Commonly_software\Anaconda3\anaconda3\envs

再确认:

bash 复制代码
conda config --show envs_dirs

以后:

bash 复制代码
conda create --name test python=3.12

会直接创建在:

bash 复制代码
E:\Commonly_software\Anaconda3\anaconda3\envs\test

✅方案三(不推荐):手动移动已有环境

此方案可能会出现各种问题,需要根据实际情况进行移动。


相关推荐
广州灵眸科技有限公司8 小时前
xfce桌面触摸校准:基于灵眸科技EASY-EAl-Orin-Nano
数据库·windows·科技
大模型码小白9 小时前
【Python零基础教程】继承、多态与魔法函数:面向对象编程三大核心特性详解
java·大数据·开发语言·人工智能·python·ai编程
麻雀飞吧10 小时前
最新量化学习路径,交易认知和技术实现要并行
人工智能·python
C^h13 小时前
python函数学习
人工智能·python·机器学习
Fanta丶13 小时前
4.Python set()集合、dict(字典、映射)、 数据容器的通用功能
python
决战灬13 小时前
langgraph之interrupt(理论篇)
人工智能·python·agent
兜客互动14 小时前
2026年AI关键词拓展挖掘软件,高效助力内容创作精准获流
人工智能·python
weixin_5386019714 小时前
智能体测开Day30pytest测试框架
python
MC皮蛋侠客14 小时前
uv 系列(七):CI/CD、Docker 与私有索引——生产级交付
python·ci/cd·docker·uv
王维同学14 小时前
[原创][Windows C++]LSA 认证、安全与通知包的注册表枚举
c++·windows·安全