Miniconda 安装与使用
快速安装 Miniconda,配置镜像,掌握环境与包管理、依赖导出和重建命令。
1. venv、Miniconda 与 Anaconda
| 方案 | 包含什么 | 适合什么情况 |
|---|---|---|
venv | Python 自带的环境工具,使用已有解释器,通常配合 pip | 已有 Python,只需隔离项目依赖 |
| Miniconda | Python、Conda 和必要依赖,其他包按需安装 | 轻量安装,管理多版本 Python |
| Anaconda Distribution | Python、Conda、图形工具和大量预装包 | 希望直接获得数据科学工具集 |
Miniconda 和 Anaconda 都用 Conda 管理环境,主要差别是预装内容。 Conda 能安装指定版本的 Python,venv 不负责下载另一个 Python。见 发行方案比较 与 venv 文档。
Miniconda 更轻量,不代表默认软件源没有商业使用限制。 defaults 仓库仍适用对应条款,换成镜像也不改变上游授权条件。下文新环境使用社区 conda-forge,其不适用该仓库的付费要求,仍须遵守服务条款与包许可证。见 官方授权说明。
后文只讲 Miniconda,以 Linux Bash 为命令主线。 日常 conda、pip 用法也适用于 macOS,安装器、校验命令和 shell 初始化有所不同。示例使用 Python 3.13、环境名 demo-env;版本与路径因环境而异。
配图说明:配图来自连接本机 macOS Bash 的终端界面,命令均在临时环境中真实执行;版本和路径因环境而异。正文仍以 Linux Bash 为主线。
2. 安装与初始化
2.1 Linux
以下适用于 Linux x86-64。先核对 系统要求;ARM 设备须选择受支持的 aarch64 安装器,不能直接使用下面的文件。
第一步:下载并计算校验值。
| |
将结果与 官方列表 中同名文件的 SHA-256 比较。校验值不一致时不要安装。
第二步:校验通过后运行安装器。
| |
- 阅读协议,确认同意后输入
yes。 - 确认安装目录,默认通常为
~/miniconda3;已有安装时不要直接覆盖。 - 询问是否初始化时输入
yes。 - 关闭并重新打开终端。
第三步:验证安装。
| |
latest 会随官方发布变化,不是固定版本。完整步骤见 Linux 安装说明。
2.2 macOS
Apple Silicon(M 系列):下载 MacOSX-arm64.sh,校验命令改用 shasum -a 256:
| |
校验通过后执行 bash Miniconda3-latest-MacOSX-arm64.sh,其余交互步骤同上。见 macOS 安装说明。
Intel Mac:默认仓库自 2025 年 8 月 15 日起停止构建 osx-64 新包;历史安装器仍可下载,但不是持续更新的最新版。此变化不等于 conda-forge 同时停止支持。见 官方说明。
2.3 Windows
按 官方安装说明 下载并运行 Windows-x86_64.exe:
- 个人安装通常选
Just Me,确认安装路径。 - 不勾选
Add to PATH,避免干扰已有 Python。 - 安装后打开 Anaconda Prompt,运行
conda --version验证。这是 Miniconda 也会提供的终端入口名称。
2.4 初始化与 base
若 Linux 安装时跳过了初始化,按实际安装路径执行一次,然后重新打开终端:
| |
macOS 默认 Zsh 则将末尾的 bash 换为 zsh。初始化让 shell 支持环境切换,不是创建项目环境。见 conda init 文档。
base 是 Miniconda 自带的基础环境,项目依赖另建环境安装。不想每次打开终端自动进入默认环境,可执行:
| |
此设置不退出当前环境;退出用 conda deactivate。旧名称 auto_activate_base 目前仍是别名,见 配置说明。
3. 配置镜像
Conda 源与 pip 源是两套地址,不能混用。 各选一个即可;镜像可能有同步延迟,不要叠加所有镜像。
3.1 可复制的镜像地址
Conda:conda-forge 频道地址。下面是静态地址清单,不是执行命令:
| |
pip:PyPI 镜像地址:
| |
临时使用示例:以下以清华镜像为例。Conda 命令只查询包;pip 命令请在第 4 节创建并激活项目环境后执行:
| |
第 4 节创建并激活环境后,需要让当前用户默认使用清华 PyPI 镜像,可以保存用户级配置:
| |
这里的 --user 指配置文件作用域,会影响读取该用户配置的其他环境,不是 pip install --user。用 pip config debug 检查配置来源;用 pip config --user unset global.index-url 删除这项设置。见 pip 配置说明。
维护方说明:清华、中科大、北外、南京大学、阿里云。中科大的部分频道使用动态缓存,可能重定向到其他镜像站。
3.2 设置 Conda 镜像
先查看配置来源:
| |
编辑 ~/.condarc;已有文件先备份,只调整相关项。以下静态配置使用清华 conda-forge,不加入 defaults:
| |
strict 表示严格频道优先级,show_channel_urls 显示包来源。
![]()
保存后查看实际生效的频道:
| |
若仍有 defaults 等非预期项,回到 --show-sources 检查其他配置文件;列表可能合并。后续命令以完成此配置为前提,详见 Conda 配置说明。
第 3.1 节临时查询中的 -c 添加频道,--override-channels 排除配置中的其他频道。仅加 -c 不等于只用这一来源。
4. 创建和使用环境
创建 demo-env,安装 Python 3.13 与 pip,再激活:
| |
-n 指定环境名,python=3.13 指定版本系列。激活只影响当前终端,不会切换项目目录;代码不要放进环境目录。
检查当前解释器:
| |
确认环境看解释器路径,不只看终端前缀。 pip --version 显示的位置也应属于 demo-env。下文完成核对后使用常见简写 pip;未激活环境或存在多个 Python 时,python -m pip 可将 pip 明确绑定到当前 python。
![]()
以下命令按需使用,不必依次执行:
| 命令 | 含义 |
|---|---|
conda env list | 列出环境和路径,当前环境通常带 * |
conda info | 查看安装路径、当前环境和平台 |
conda activate demo-env | 切换到指定环境 |
conda deactivate | 退出当前激活层级,可能回到 base |
conda run -n demo-env python --version | 不先激活,直接在指定环境执行命令 |
conda create --help | 查看参数说明,其他子命令也支持 --help |
-p 路径 可代替 -n 名称 按路径指定环境;-y 跳过确认,未核对安装计划时不要添加。
5. 安装与管理包
Conda 管理环境、Python 版本和 Conda 包,pip 安装 PyPI 包。已配置 conda-forge 时,先用 Conda 安装频道中已有的依赖;频道中没有,或项目明确使用 PyPI 和 requirements.txt 时,再用 pip。
5.1 Conda 命令
激活目标环境,安装 requests,再验证版本:
| |
![]()
| 命令 | 含义 |
|---|---|
conda search requests | 搜索可安装的版本 |
conda list | 列出当前环境里的包 |
conda list requests | 查询指定包 |
conda install requests=2.32 | 安装指定版本系列 |
conda update requests | 更新一个包及必要依赖 |
conda remove requests | 移除一个包,先核对连带变更 |
未激活目标环境时,可用 -n demo-env 显式指定环境,例如 conda list -n demo-env。
5.2 pip 命令
当 Conda 频道没有所需包,或项目使用 PyPI 依赖清单时,先激活环境,再用 pip 安装。
说明:
rich是个很流行的终端美化库,专门用来让命令行输出变好看。简单说,普通的print()只能输出纯文本,而 rich 可以输出:
示例展示结:
以下用 rich 演示:
| |
| 命令 | 含义 |
|---|---|
pip list | 列出当前 Python 可识别的包 |
pip show rich | 查看版本、位置和依赖 |
pip install "rich==14.2.0" | 安装指定版本 |
pip install --upgrade rich | 更新包 |
pip uninstall rich | 卸载包 |
pip check | 检查声明的依赖是否缺失或冲突 |
先 Conda、后 pip;不要用两者反复覆盖同一个包。 在 Conda 环境中执行 pip install 时不要加 --user。rich 仅用于演示 pip,并非只能用 pip 安装;混用后还需调整 Conda 依赖时,优先按清单重建。见 官方混用建议。
6. 导出依赖与重建
导出的是清单,不是安装包文件。 重建时仍需下载依赖;下面两条路线选其一,不要重复灌入同一环境。
| 项目情况 | 使用清单 |
|---|---|
| Miniconda 只提供 Python 和隔离环境,项目依赖都由 pip 管理 | requirements.txt |
| Conda 管理 Python 和 Conda 包,pip 只补充其余依赖 | environment.yml |
> 和 --file 会覆盖同名文件,导出前确认路径。
6.1 pip:requirements.txt
以下用独立的 pip-demo-env 演示纯 pip 路线,不承接第 5 节同时使用 Conda 和 pip 的 demo-env。
创建原环境、安装依赖并导出:
| |
在目标机器进入清单所在目录,创建新环境并安装:
| |
freeze 也可能列出 Conda 安装但 Python 能识别的包、间接依赖和本机路径;不是只导出 pip 安装的包,也不包含 Python 解释器。分享前检查清单。
-r 表示从文件读取依赖,即常见的 pip install -r requirements.txt。文件名可自定;检查通过后仍需运行项目验证。
![]()
6.2 Conda:environment.yml
第 5 节的 demo-env 同时包含 Conda 安装的 requests 和 pip 安装的 rich,应使用本节的混合清单。先导出主动安装的 Conda 依赖:
| |
--from-history 减少间接依赖的平台限制,但不是精确锁文件,也不能代替完整的 pip 清单。删除本机 prefix,核对频道并排除不需要的 defaults,补齐 pip 依赖。
![]()
将 environment.yml 整理并保存为下面的配置,不是直接沿用原始导出内容:
| |
pip: 列出交给 pip 安装的包。nodefaults 只放在 environment.yml,用于排除其他配置频道;不要放进 .condarc。
在该文件所在目录重建,-n 覆盖文件中的环境名,保留原环境:
| |
若需记录完整状态,使用 conda env export -n demo-env --file environment-full.yml。完整导出含具体版本、构建等信息,仍不保证跨平台重建;分享前检查路径、私有源与认证信息。见 环境管理文档。
7. 删除环境与清理缓存
先用 conda env list 核对名称;如果正在副本环境内,先退出,再删除。以下以第 6.2 节的 demo-env-copy 为例:
| |
环境目录里的文件会一起删除,外部项目目录不受影响;不要删除 base。 同名环境已有其他用途时,不要执行上面的删除命令。
若使用第 6.1 节的 pip 路线,对应的副本环境名是 pip-demo-env-copy。
| 命令 | 含义 |
|---|---|
conda clean --tarballs --dry-run | 预览可清理的缓存压缩包,不执行删除 |
conda clean --tarballs | 确认后删除缓存压缩包;以后可能需要重新下载 |
8. 常见问题
| 现象 | 检查项 |
|---|---|
找不到 conda,或要求 conda init | 是否安装、初始化当前 shell,并重新打开终端 |
安装后仍 ModuleNotFoundError | 安装包与运行程序是否使用同一个 Python |
PackagesNotFoundError | 包名、版本、频道与架构是否匹配 |
LibMambaUnsatisfiableError | Python 版本、依赖约束或混源是否冲突 |
| 镜像下载失败 | 镜像是否同步完成、是否提供目标平台的包 |
| 终端能运行,编辑器或 Notebook 不能 | 解释器或内核是否指向 demo-env |
排查导入错误,在实际报错的位置打印 sys.executable;另一个终端激活了环境,不代表编辑器或 Notebook 已经切换。
评论
使用 GitHub 登录后参与讨论,评论将公开保存在 GitHub。
站长管理删除会同步到 GitHub,无法撤销。
阅读到这里时加载评论。