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

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

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


相关推荐
傻啦嘿哟11 小时前
如何在 Python 中使用 colorama 库来给输出添加颜色
开发语言·python
forEverPlume11 小时前
mysql如何实现高可用集群架构_基于MHA环境搭建与部署
jvm·数据库·python
方安乐16 小时前
python之向量、向量和、向量点积
开发语言·python·numpy
zh15702317 小时前
JavaScript中WorkerThreads解决服务端计算瓶颈
jvm·数据库·python
x***r15117 小时前
node-v0.12.2-x86安装步骤详解(附Node.js历史版本与32位配置教程)
windows
小小小米粒18 小时前
Collection单列集合、Map(Key - Value)双列集合,多继承实现。
java·开发语言·windows
蜡台18 小时前
Python包管理工具pip完全指南-----2
linux·windows·python
Mr.朱鹏18 小时前
【Python 进阶 | 第四篇】Psycopg3 + Flask 实现 PostgreSQL CRUD 全流程:从连接池到RESTful接口
python·postgresql·flask·virtualenv·fastapi·pip·tornado
2401_8714928518 小时前
Vue.js监听器watch利用回调函数处理级联下拉框数据联动
jvm·数据库·python
FreakStudio18 小时前
亲测可用!可本地部署的 MicroPython 开源仿真器
python·单片机·嵌入式·面向对象·并行计算·电子diy·电子计算机