#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 对通用开发者有益,而在生信领域几乎成为标配,其优势体现在以下方面:
处理复杂的软件依赖
生信工具的依赖链条往往高度复杂,一个标准的转录组分析流程可能涉及:
- Python 科学计算栈(NumPy、Pandas、SciPy 等)
- R 及 Bioconductor 包
- C/C++ 编译的底层工具(如 SAMtools、BCFtools、HISAT2)

传统包管理器(pip、CRAN 等)难以统一管理多语言、多版本依赖。Conda 能在单一隔离环境中一次性解析大部分依赖,大幅降低配置难度和冲突风险。
支持跨平台可复现协作
生信研究通常涉及多平台协作(Linux、macOS、Windows),传统配置常导致 “在我机器上可运行,在他人机器上失败” 的问题。
Conda 通过环境导出与重建实现高度可复现:
# 导出当前环境规格conda env export --from-history > environment.yml
# 在另一台机器上重建环境conda env create -f environment.yml
结合容器技术(如 Docker、Singularity),可进一步提升大规模计算的可移植性。
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 三大平台。

使用 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 环境,可勾选)④ 安装完成后清除包缓存(必勾选)

-
安装完成后,点击 Finish 即可

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

-
初始化 Conda
- 在 cmd 或者 powershell 中输入:
CMD / PowerShell # 初始化 Condaconda init
使用 Shell 脚本安装(通用)
-
下载安装脚本
打开终端,进入下载目录:
终端 # 切换到下载目录cd ~/Downloads根据你的架构下载对应版本:
终端 # 直连下载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 -
运行安装脚本
终端 # 运行 shell 脚本bash Miniforge3-Linux-x86_64.sh按照提示完成安装:
- 按 Enter 查看许可协议
- 输入
yes同意 - 按 Enter 确认默认安装路径
~/miniforge3 - 等待安装完成(约 1-2 分钟)
- 输入
yes初始化 Conda
-
重新加载 Shell
终端 # shell 是 bash 的情况source ~/.bashrc# shell 是 Zsh 的情况source ~/.zshrc
设置懒加载(Debian/Ubuntu)
-
定位 Conda 的默认初始化配置
打开你的
~/.zshrc或~/.bashrc文件,找到 Conda 自动生成的初始化代码块。 -
使用懒加载机制替换默认初始化
将 Conda 初始化代码替换为以下懒加载版本:
点击展开 — Conda & Mamba 懒加载配置
# >>> 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 <<<确认芯片类型
在下载之前,先确认你的 Mac 是 Intel 芯片还是 Apple Silicon(M1/M2/M3)芯片:
# 在终端运行uname -m- 输出
x86_64→ Intel 芯片 - 输出
arm64→ Apple Silicon 芯片
使用 Shell 脚本安装
-
下载安装脚本
访问 Miniforge Download,下载对应的
.sh文件:- Intel 芯片:
Miniforge3-MacOSX-x86_64.sh - Apple Silicon:
Miniforge3-MacOSX-arm64.sh
- Intel 芯片:
-
运行安装
打开终端,进入下载目录并运行脚本:
终端 # 切换到下载目录cd ~/Downloads# 根据实际情况将 * 替换为 arm64 或者 x86_64bash Miniforge3-MacOSX-*.sh按照提示完成安装:
- 按 Enter 翻页阅读许可协议
- 输入
yes同意许可 - 按 Enter 使用默认路径
~/miniforge3,或输入自定义路径 - 输入
yes初始化 Conda
-
重启终端
关闭终端并重新打开,或者运行:
终端 # 重新加载 zsh 配置文件source ~/.zshrc
#安装后验证
安装完成后,需要确认一切正常工作。
验证 Conda 和 Mamba 版本
# conda 版本查询conda --version
# mamba 版本查询mamba --version应该显示类似 conda 26.x.x 和 mamba 2.5.0 的版本号。
查看详细配置信息
conda info这个命令会显示 Conda 和 Mamba 的完整配置信息。重点关注:
active env location:你的 Conda 安装路径channel URLs:已配置的频道,应该包含conda-forge
点击展开 — conda info 输出示例
# 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配置 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 等)

