【Conda】生信环境管理器——安装教程
Conda 简介
生信领域的软件环境配置一直面临诸多挑战——不同工具要求不同版本的 Python、R 或其他依赖库,极易产生冲突,但 Conda 的出现彻底改变了这一现状。
Conda 是一个开源的 包管理器 和 环境管理器 ,最初由 Anaconda 公司开发,它可以在同一台机器上安装多个版本的软件包及其依赖,并在不同的环境之间自由切换。

用一个实际场景说明,假设你需要同时使用不同版本的 Python 和第三方库:
虚拟环境 01需要 Python 2.7、Pandas 1.0.1 和 PySpark 2.4.8虚拟环境 02需要 Python 3.6、Pandas 1.3.5 和 Matplotlib 3.5.1虚拟环境 03需要 Python 3.10、Numpy 1.23.1 和 Matplotlib 3.5.2
在传统的 pip 环境中,这是很难实现的——同一台机器上通常只能维护一个全局的 Python 版本和一套库版本,容易出现版本冲突。
而 Conda 可以轻松解决这个问题,通过创建多个独立的虚拟环境,每个环境都可以拥有完全不同的 Python 版本和包版本:
# 为项目01创建环境(Python 2.7 + Pandas 1.0.1 + PySpark 2.4.8)conda create -n env01 python=2.7 pandas=1.0.1 pyspark=2.4.8
# 为项目02创建环境(Python 3.6 + Pandas 1.3.5 + Matplotlib 3.5.1)conda create -n env02 python=3.6 pandas=1.3.5 matplotlib=3.5.1
# 为项目03创建环境(Python 3.10 + Numpy 1.23.1 + Matplotlib 3.5.2)conda create -n env03 python=3.10 numpy=1.23.1 matplotlib=3.5.2
Conda 的核心价值 :将不同环境完全隔离,互不干扰 。
一. Conda 在生信领域的优势
Conda 对通用开发者有益,而在生信领域几乎成为标配,其 优势 体现在以下方面:
1. 处理复杂的软件依赖
生信工具的依赖链条往往高度复杂,一个标准的转录组分析流程可能涉及:
- Python 科学计算栈(NumPy、Pandas、SciPy 等);
- R 及 Bioconductor 包;
- C/C++ 编译的底层工具(如 SAMtools、BCFtools、HISAT2)。

传统包管理器(pip、CRAN 等)难以统一管理多语言、多版本依赖。Conda 能在单一隔离环境中一次性解析大部分依赖,大幅降低配置难度和冲突风险。
2. 支持跨平台可复现协作
生信研究通常涉及多平台协作(Linux、macOS、Windows),传统配置常导致 “在我机器上可运行,在他人机器上失败” 的问题。
Conda 通过环境导出与重建实现高度可复现:
# 导出当前环境规格conda env export --from-history > environment.yml
# 在另一台机器上重建环境conda env create -f environment.yml
结合容器技术(如 Docker、Singularity),可进一步提升大规模计算的可移植性。
3.Bioconda 频道的便利
Bioconda 是专为生物信息学打造的 Conda 频道,目前收录超过 8000 个生信相关软件,覆盖基因组学、转录组学、蛋白质组学、系统发育分析等多个领域。

使用 Bioconda 安装工具 极为简便,无需手动编译和处理底层依赖:
# 传统编译安装(复杂且易出错)wget ... && ./configure && make && make install
# Bioconda 一行命令安装conda install -c bioconda -c conda-forge <tool_name>二. Conda 发行版选择
Conda 供多种安装选项: Anaconda、Miniconda 和 Miniforge。其中,Miniforge 因其轻量级、高性能和完全开源的特点,在生物信息学领域已成为优先选择。

Anaconda
预装了 150 多个常用数据科学包,包括 NumPy、Pandas、Matplotlib、Jupyter Notebook 等,开箱即用。默认使用 Anaconda 官方维护的 defaults 频道。

适用场景: ①适合数据科学初学者或希望快速搭建完整数据科学环境的入门用户。②但需注意 Anaconda 公司的许可条款,在机构研究或生产环境中可能存在使用限制。
Miniconda
仅包含 Python 解释器和 Conda 包管理器,其他软件包可按需安装,默认同样使用 defaults 频道。

适用场景: ①适合有一定经验、希望自行定制环境的开发者。②近年来,许多科研机构为规避商业许可限制,已逐渐转向社区维护的版本。
Miniforge
最轻量的发行版,仅包含 Conda、微型 Python 和内置的 mamba(求解器速度比传统 conda 快 5–10 倍)。默认使用社区驱动的 conda-forge 频道,包更新及时且完全开源。

适用场景: ①特别适合生物信息学研究者、需要快速安装和获取最新软件包的用户,以及希望完全避免商业许可限制的场景。②在高性能计算(HPC)和服务器环境中优势明显。
| 特性 | Anaconda | Miniconda | Miniforge |
|---|---|---|---|
| 大小 | ~3-5 GB | ~400-600 MB | ~50-120 MB |
| 默认频道 | defaults | defaults | conda-forge |
| 预装软件 | 150+ 包 | 仅 Python | 仅 Python |
| Mamba 支持 | 需手动安装 | 需手动安装 | 内置 |
| 开源性 | 商业维护 | 商业维护 | 社区维护 |
三.安装步骤
Conda 的三个主要发行版均可从官方渠道下载最新版本:
- Anaconda:https://www.anaconda.com/download
- Miniconda:访问 https://docs.conda.io/ 并选择 Miniconda 安装程序
- Miniforge:同样访问 https://docs.conda.io/ 或 https://conda-forge.org/download/
本文以 Miniforge 为例,涵盖 Windows、macOS 和 Linux 三大平台。

Windows 平台安装
(1)使用exe安装程序安装
-
下载安装包
访问 https://docs.conda.io/ ,下载最新版本的
Miniforge3-Windows-x86_64.exe -
运行安装程序
双击下载的
.exe文件,按照安装向导完成安装:-
选择 “Just for me”(单用户)

-
选择
C盘或D盘下不包含中文、空格或特殊字符的路径(推荐使用默认路径或类似D:\Miniforge3)。
-
四个选项从上到下分别是:
①创建快捷方式,方便以后在桌面开始菜单快速打开 Miniforge Prompt(必勾选)
②将 Miniforge 添加到系统
PATH 环境变量,允许你直接在终端( CMD 或者 PowerShell )中直接使用conda 命令,无需使用 Miniforge prompt (如果你已经在系统安装过 “Python 发行版”,则不建议勾选,直接使用 “Miniforge prompt” )③将 Miniforge 注册为系统默认的python,在
IDE或代码编辑器中优先使用 Miniforge 中base环境自带的python解释器 (如果你主要使用 Miniforge 开发且没有其他 Python 环境,可勾选)④安装完成后清除包缓存(必勾选)

如果之前没有安装过其他 Python,推荐全部勾选;否则请谨慎选择第 2、3 项。 -
安装完成后,点击 Finish 即可。界面如下所示:

-
(2)Conda 初始化设置 (使用 Miniforge Prompt 则无需此步)
- 打开 CMD 或者 PowerShell
- 按快捷键
Win + R - 输入 cmd 或者 powershell:

- 按快捷键
- 初始化 Conda
- 在 cmd 或者 powershell 中输入:
Terminal window #初始化conda init
Linux 平台安装
(1)使用 Shell 脚本安装(通用)
-
下载安装脚本
打开终端,进入下载目录:
Terminal window #切换到下载目录cd ~/Downloads根据你的架构下载对应版本:
Terminal window #直连下载wget https://github.com/conda-forge/miniforge/releases/latest/download/Miniforge3-Linux-x86_64.sh#清华源下载wget https://mirrors.tuna.tsinghua.edu.cn/github-release/conda-forge/miniforge/LatestRelease/Miniforge3-Linux-x86_64.sh -
运行安装脚本
Terminal window #运行 shell 脚本bash Miniforge3-Linux-x86_64.sh按照提示完成安装:
- 按 Enter 查看许可协议
- 输入
yes同意 - 按 Enter 确认默认安装路径
~/miniforge3 - 等待安装完成(约 1-2 分钟)
- 输入
yes初始化 Conda
-
重新加载 Shell
Terminal window #shell是bash的情况:source ~/.bashrc#shell是Zsh的情况:source ~/.zshrc
(2)设置懒加载(Debian/Ubuntu)
- 定位 Conda 的默认初始化配置
- 打开你的
~/.zshrc或~/.bashrc文件,找到Conda自动生成的初始化代码块:
- 打开你的
# >>> conda initialize >>># !! Contents within this block are managed by 'conda init' !!__conda_setup="$('/home/linlinli/miniforge3/bin/conda' 'shell.zsh' 'hook' 2> /dev/null)"if [ $? -eq 0 ]; then eval "$__conda_setup"else if [ -f "/home/linlinli/miniforge3/etc/profile.d/conda.sh" ]; then . "/home/linlinli/miniforge3/etc/profile.d/conda.sh" else export PATH="/home/linlinli/miniforge3/bin:$PATH" fifiunset __conda_setup# <<< conda initialize <<<- 使用懒加载机制替换默认初始化
- 将上述 Conda 初始化代码替换为以下
懒加载版本:
- 将上述 Conda 初始化代码替换为以下
# >>> Conda & Mamba Lazy Load >>>_lazy_conda_init() { # 1. 释放占位函数,防止死循环 unset -f conda mamba _lazy_conda_init
# 2. 初始化逻辑 __conda_setup="$('/home/linlinli/miniforge3/bin/conda' 'shell.zsh' 'hook' 2> /dev/null)" if [ $? -eq 0 ]; then eval "$__conda_setup" else if [ -f "/home/linlinli/miniforge3/etc/profile.d/conda.sh" ]; then . "/home/linlinli/miniforge3/etc/profile.d/conda.sh" else export PATH="/home/linlinli/miniforge3/bin:$PATH" fi fi unset __conda_setup}
# 3. 拦截 conda 和 mamba 命令conda() { _lazy_conda_init conda "$@"}
mamba() { _lazy_conda_init mamba "$@"}# <<< Conda & Mamba Lazy Load <<<macOS 平台安装
(1)确认芯片类型
在下载之前,先确认你的 Mac 是 Intel 芯片还是 Apple Silicon(M1/M2/M3)芯片:
# 在终端运行uname -m- 输出
x86_64→ Intel 芯片 - 输出
arm64→ Apple Silicon 芯片
(2)使用 Shell 脚本安装
-
下载安装脚本
访问 Miniforge Download,下载对应的
.sh文件:- Intel 芯片:
Miniforge3-MacOSX-x86_64.sh - Apple Silicon:
Miniforge3-MacOSX-arm64.sh
- Intel 芯片:
-
运行安装
打开终端,进入下载目录并运行脚本:
Terminal window #切换到下载目录cd ~/Downloads#根据实际情况将*替换为arm64或者x86_64bash Miniforge3-MacOSX-*.sh按照提示完成安装:
- 按 Enter 翻页阅读许可协议
- 输入
yes同意许可 - 按 Enter 使用默认路径
~/miniforge3,或输入自定义路径 - 输入
yes初始化 Conda
-
重启终端
关闭终端并重新打开,或者运行:
Terminal window #重新加载 zsh 配置文件source ~/.zshrc
四.安装后验证
安装完成后,需要确认一切正常工作。
1.验证 Conda & Mamba 版本
#conda版本查询`conda --version
#mamba版本查询mamba --version应该显示类似
conda 26.x.x&mamba 2.5.0的版本号。
2.查看详细配置信息
conda info这个命令会显示 Conda & Mamba 的完整配置信息:
#Conda的配置信息: active environment : base active env location : /home/linlinli/miniforge3 shell level : 1 user config file : /home/linlinli/.condarc populated config files : /home/linlinli/miniforge3/.condarc conda version : 26.1.1 conda-build version : not installed python version : 3.13.12.final.0 solver : libmamba (default) virtual packages : __archspec=1=skylake __conda=26.1.1=0 __glibc=2.39=0 __linux=6.17.0=0 __unix=0=0 base environment : /home/linlinli/miniforge3 (writable) conda av data dir : /home/linlinli/miniforge3/etc/conda conda av metadata url : None channel URLs : https://conda.anaconda.org/conda-forge/linux-64 https://conda.anaconda.org/conda-forge/noarch package cache : /home/linlinli/miniforge3/pkgs /home/linlinli/.conda/pkgs envs directories : /home/linlinli/miniforge3/envs /home/linlinli/.conda/envs temporary directory : /tmp platform : linux-64 user-agent : conda/26.1.1 requests/2.32.5 CPython/3.13.12 Linux/6.17.0-20-generic ubuntu/24.04.4 glibc/2.39 solver/libmamba conda-libmamba-solver/25.11.0 libmambapy/2.5.0 UID:GID : 1000:1000 netrc file : None offline mode : False
#Mamba的配置信息:libmamba version : 2.5.0 mamba version : 2.5.0 curl version : libcurl/8.19.0 OpenSSL/3.6.1 zlib/1.3.2 zstd/1.5.7 libssh2/1.11.1 nghttp2/1.68.1 mit-krb5/1.22.2 libarchive version : libarchive 3.8.6 zlib/1.3.2 liblzma/5.8.2 bz2lib/1.0.8 liblz4/1.10.0 libzstd/1.5.7 liblzo2/2.10 openssl/3.5.5 libb2/bundled envs directories : /home/linlinli/miniforge3/envs package cache : /home/linlinli/miniforge3/pkgs /home/linlinli/.mamba/pkgs environment : base (active) env location : /home/linlinli/miniforge3 user config files : /home/linlinli/.mambarc populated config files : /home/linlinli/miniforge3/.condarc virtual packages : __unix=0=0 __linux=6.17.0=0 __glibc=2.39=0 __archspec=1=x86_64_v3 channels : https://conda.anaconda.org/conda-forge/linux-64 https://conda.anaconda.org/conda-forge/noarch base environment : /home/linlinli/miniforge3 platform : linux-64重点关注:
active env location:你的 Conda 安装路径channel URLs:已配置的频道,应该包含conda-forge
3.配置Conda软件源
- 在使用 Conda 安装生物信息学工具时,正确配置软件源(channels)非常重要,以确保软件包能快速、稳定地下载,并避免依赖冲突。
- ①官方源版本:
# 添加 channelsconda config --add channels biocondaconda config --prepend channels conda-forge
# 启用严格通道优先级conda config --set channel_priority strict
# 查看当前配置conda config --show channels- ②镜像源版本:
# 删除原本的官方源conda config --remove channels conda-forge
# 添加 bioconda 清华镜像源conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/bioconda/
# 添加 conda-forge 清华镜像源conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
# 启用严格通道优先级conda config --set channel_priority strict
#下载时显示实际的通道地址conda config --set show_channel_urls yes-
配置后的
channels显示效果(官方源示例):
-
channels的顺序应确保 conda-forge 在 bioconda 之前(重要)
- conda-forge:大多数依赖项(numpy、scipy、zlib、CRAN 包等)
- bioconda:大多数生物信息学软件包(salmon、STAR、samtools、DESeq2 等)

支持与分享
如果这篇文章对你有帮助,欢迎分享给更多人或赞助支持!