【Conda】生信环境管理器——安装教程

2786 字
14 分钟
【Conda】生信环境管理器——安装教程

Conda 简介#

生信领域的软件环境配置一直面临诸多挑战——不同工具要求不同版本的 Python、R 或其他依赖库,极易产生冲突,但 Conda 的出现彻底改变了这一现状。

Conda 是一个开源的 包管理器环境管理器 ,最初由 Anaconda 公司开发,它可以在同一台机器上安装多个版本的软件包及其依赖,并在不同的环境之间自由切换。

Conda
Conda

用一个实际场景说明,假设你需要同时使用不同版本的 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 版本和包版本:

Terminal window
# 为项目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核心价值 :将不同环境完全隔离,互不干扰 。


一. Conda 在生信领域的优势#

Conda 对通用开发者有益,而在生信领域几乎成为标配,其 优势 体现在以下方面:

1. 处理复杂的软件依赖#

生信工具的依赖链条往往高度复杂,一个标准的转录组分析流程可能涉及:

  • Python 科学计算栈(NumPy、Pandas、SciPy 等);
  • R 及 Bioconductor 包;
  • C/C++ 编译的底层工具(如 SAMtools、BCFtools、HISAT2)。

Python Package
Python Package

传统包管理器(pip、CRAN 等)难以统一管理多语言、多版本依赖。Conda 能在单一隔离环境中一次性解析大部分依赖,大幅降低配置难度和冲突风险。

2. 支持跨平台可复现协作#

生信研究通常涉及多平台协作(Linux、macOS、Windows),传统配置常导致 “在我机器上可运行,在他人机器上失败” 的问题。

Conda 通过环境导出与重建实现高度可复现:

Terminal window
# 导出当前环境规格
conda env export --from-history > environment.yml
# 在另一台机器上重建环境
conda env create -f environment.yml

OS
OS

结合容器技术(如 DockerSingularity),可进一步提升大规模计算的可移植性。

3.Bioconda 频道的便利#

Bioconda 是专为生物信息学打造的 Conda 频道,目前收录超过 8000 个生信相关软件,覆盖基因组学、转录组学、蛋白质组学、系统发育分析等多个领域。

Bioconda
Bioconda

使用 Bioconda 安装工具 极为简便,无需手动编译和处理底层依赖:

Terminal window
# 传统编译安装(复杂且易出错)
wget ... && ./configure && make && make install
# Bioconda 一行命令安装
conda install -c bioconda -c conda-forge <tool_name>

二. Conda 发行版选择#

Conda 供多种安装选项: AnacondaMinicondaMiniforge。其中,Miniforge 因其轻量级、高性能和完全开源的特点,在生物信息学领域已成为优先选择。

Conda-Relation
Conda-Relation

Anaconda#

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

Anaconda
Anaconda

适用场景: ①适合数据科学初学者或希望快速搭建完整数据科学环境的入门用户。②但需注意 Anaconda 公司的许可条款,在机构研究或生产环境中可能存在使用限制。

Miniconda#

仅包含 Python 解释器和 Conda 包管理器,其他软件包可按需安装,默认同样使用 defaults 频道

Miniconda
Miniconda

适用场景: ①适合有一定经验、希望自行定制环境的开发者。②近年来,许多科研机构为规避商业许可限制,已逐渐转向社区维护的版本。

Miniforge#

最轻量的发行版,仅包含 Conda、微型 Python 和内置的 mamba(求解器速度比传统 conda 快 5–10 倍)。默认使用社区驱动的 conda-forge 频道,包更新及时且完全开源。

conda-forge
conda-forge

适用场景: ①特别适合生物信息学研究者、需要快速安装和获取最新软件包的用户,以及希望完全避免商业许可限制的场景。②在高性能计算(HPC)和服务器环境中优势明显。

特性AnacondaMinicondaMiniforge
大小~3-5 GB~400-600 MB~50-120 MB
默认频道defaultsdefaultsconda-forge
预装软件150+ 包仅 Python仅 Python
Mamba 支持需手动安装需手动安装内置
开源性商业维护商业维护社区维护

三.安装步骤#

Conda 的三个主要发行版均可从官方渠道下载最新版本:

本文以 Miniforge 为例,涵盖 Windows、macOS 和 Linux 三大平台。

Conda Download
Conda Download

Windows 平台安装#

(1)使用exe安装程序安装#

  1. 下载安装包

    访问 https://docs.conda.io/ ,下载最新版本的 Miniforge3-Windows-x86_64.exe

  2. 运行安装程序

    双击下载的 .exe 文件,按照安装向导完成安装:

    • 选择 “Just for me”(单用户)

    • 选择 C盘D盘不包含中文、空格或特殊字符的路径(推荐使用默认路径或类似 D:\Miniforge3)。

    • 四个选项从上到下分别是:

      ①创建快捷方式,方便以后在桌面开始菜单快速打开 Miniforge Prompt(必勾选)

      ②将 Miniforge 添加到系统 PATH 环境变量,允许你直接在终端CMD 或者 PowerShell )中直接使用 conda 命令,无需使用 Miniforge prompt (如果你已经在系统安装过 “Python 发行版”,则不建议勾选,直接使用 “Miniforge prompt” )

      ③将 Miniforge 注册为系统默认的python,在 IDE代码编辑器中优先使用 Miniforgebase环境自带的python解释器 (如果你主要使用 Miniforge 开发且没有其他 Python 环境,可勾选)

      ④安装完成后清除包缓存(必勾选)

      如果之前没有安装过其他 Python,推荐全部勾选;否则请谨慎选择第 2、3 项。
      如果之前没有安装过其他 Python,推荐全部勾选;否则请谨慎选择第 2、3 项。

    • 安装完成后,点击 Finish 即可。界面如下所示:

(2)Conda 初始化设置 (使用 Miniforge Prompt 则无需此步)#

  1. 打开 CMD 或者 PowerShell
    • 按快捷键 Win + R
    • 输入 cmd 或者 powershell
  2. 初始化 Conda
    • cmd 或者 powershell 中输入:
    Terminal window
    #初始化
    conda init

Linux 平台安装#

(1)使用 Shell 脚本安装(通用)#

  1. 下载安装脚本

    打开终端,进入下载目录:

    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
  2. 运行安装脚本

    Terminal window
    #运行 shell 脚本
    bash Miniforge3-Linux-x86_64.sh

    按照提示完成安装:

    • 按 Enter 查看许可协议
    • 输入 yes 同意
    • 按 Enter 确认默认安装路径 ~/miniforge3
    • 等待安装完成(约 1-2 分钟)
    • 输入 yes 初始化 Conda
  3. 重新加载 Shell

    Terminal window
    #shell是bash的情况:
    source ~/.bashrc
    #shell是Zsh的情况:
    source ~/.zshrc

(2)设置懒加载(Debian/Ubuntu)#

  1. 定位 Conda 的默认初始化配置
    • 打开你的 ~/.zshrc~/.bashrc 文件,找到 Conda 自动生成的初始化代码块:
Terminal window
# >>> 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"
    fi
fi
unset __conda_setup
# <<< conda initialize <<<
  1. 使用懒加载机制替换默认初始化
    • 将上述 Conda 初始化代码替换为以下懒加载版本:
Terminal window
# >>> 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)芯片:

Terminal window
# 在终端运行
uname -m
  • 输出 x86_64 → Intel 芯片
  • 输出 arm64 → Apple Silicon 芯片

(2)使用 Shell 脚本安装#

  1. 下载安装脚本

    访问 Miniforge Download,下载对应的 .sh 文件:

    • Intel 芯片:Miniforge3-MacOSX-x86_64.sh
    • Apple Silicon:Miniforge3-MacOSX-arm64.sh
  2. 运行安装

    打开终端,进入下载目录并运行脚本:

    Terminal window
    #切换到下载目录
    cd ~/Downloads
    #根据实际情况将*替换为arm64或者x86_64
    bash Miniforge3-MacOSX-*.sh

    按照提示完成安装:

    • Enter 翻页阅读许可协议
    • 输入 yes 同意许可
    • Enter 使用默认路径 ~/miniforge3,或输入自定义路径
    • 输入 yes 初始化 Conda
  3. 重启终端

    关闭终端并重新打开,或者运行:

    Terminal window
    #重新加载 zsh 配置文件
    source ~/.zshrc

四.安装后验证#

安装完成后,需要确认一切正常工作。

1.验证 Conda & Mamba 版本#

Terminal window
#conda版本查询`
conda --version
#mamba版本查询
mamba --version

应该显示类似 conda 26.x.x & mamba 2.5.0 的版本号。

2.查看详细配置信息#

Terminal window
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软件源#

  1. 在使用 Conda 安装生物信息学工具时,正确配置软件源(channels)非常重要,以确保软件包能快速、稳定地下载,并避免依赖冲突。
  • ①官方源版本:
Terminal window
# 添加 channels
conda config --add channels bioconda
conda config --prepend channels conda-forge
# 启用严格通道优先级
conda config --set channel_priority strict
# 查看当前配置
conda config --show channels
  • ②镜像源版本:
Terminal window
# 删除原本的官方源
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
  1. 配置后的 channels 显示效果(官方源示例):

  2. channels 的顺序应确保 conda-forgebioconda 之前(重要)

  • conda-forge:大多数依赖项(numpy、scipy、zlib、CRAN 包等)
  • bioconda:大多数生物信息学软件包(salmon、STAR、samtools、DESeq2 等)

支持与分享

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

赞助
【Conda】生信环境管理器——安装教程
https://blog-bioinfo.top/posts/conda-installation/
作者
linlinli000
发布于
2026-03-29
许可协议
CC BY-NC-SA 4.0

评论区

Profile Image of the Author
linlinli000
Keep Calm and Carry On.
公告
欢迎来到我的博客!这是一则示例公告。
分类
标签
站点统计
文章
3
分类
2
标签
8
总字数
8,845
运行时长
0
最后活动
0 天前

目录