01 背景
Conda 是一个开源的包管理系统和环境管理系统,可在 Windows、macOS 和 Linux 上运行。 Conda 可快速安装、运行和更新包及其依赖项。 Conda 可以轻松地在计算机上创建、保存、加载和切换环境。 它是为 Python 程序而创造的,但它可以打包和分发任何语言的软件。
在 Conda 出现之前,生物信息学软件的安装过程通常比较复杂。除了部分软件提供预编译的可执行程序外,大多数软件需要通过执行 `./configure`、`make` 和 `make install` 等编译命令进行安装。很多人不了解环境变量,并不会安装软件。
Conda 的出现极大简化了生信软件的安装与环境配置,只需通过 `conda install XXX` 命令即可完成大部分软件及其依赖的安装。然而,Conda 也并非完美,其下载速度较慢、依赖解决效率不高,导致部分软件无法成功安装。为了解决这些问题,Mamba 应运而生。Mamba 是用 C 语言重写的 Conda,具备与 Conda 相同的命令使用方式,但显著提升了下载速度和依赖解决效率。就基础而言,先学会conda更重要。
02 参考
https://www.anaconda.com/products/distribution #官网
https://mirrors.tuna.tsinghua.edu.cn/ #清华镜像源https://mirror.tuna.tsinghua.edu.cn/help/anaconda/
#Miniconda 是一个 Anaconda 的轻量级替代,默认只包含了 python 和 conda,但是可以通过 pip 和 conda 来安装所需要的包。
Miniconda 安装包可以到 https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/ 下载
03 安装
#参考镜像下载
https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/
ananconda和miniconda没啥区别
wget -c https://repo.anaconda.com/archive/Anaconda3-2023.07-2-Linux-x86_64.sh #镜像1 23.7.2
https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-2023.03-Linux-x86_64.sh #镜像2 23.3.1
wget https://repo.anaconda.com/archive/Anaconda3-2024.06-1-Linux-x86_64.sh #新版
#参考案例
bash Anaconda3-2024.06-1-Linux-x86_64.sh
bash Anaconda3-2021.05-Linux-x86_64.sh
enter
yes
q
yes
conda config --set auto_activate_base false
退出重连才能生效
source ~/.bashrc
3.1 mamba安装
conda install mamba -n base -c conda-forge
wget https://github.com/conda-forge/miniforge/releases/download/24.5.0-0/Mambaforge-24.5.0-0-Linux-x86_64.sh
bash Mambaforge-24.5.0-0-Linux-x86_64.sh
04 常用命令行
环境管理conda创建、查看、激活、退出、删除环境--linux002
4.1 channel管理
打开 ~/.condarc
文件,没有就创建一个
#显示channel
conda config --show channels
channels:
- defaults
#添加channel
conda config --add channels bioconda
conda config --add channels conda-forge
#镜像channel,更快
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/bioconda/
conda config --get channels
--add channels 'defaults' # lowest priority
--add channels 'bioconda'
--add channels 'conda-forge'
--add channels 'https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/bioconda/' # highest priority
conda clean -i #激活配置
运行 conda clean -i 清除索引缓存,保证用的是镜像站提供的索引
channels:
- defaults
show_channel_urls: true
default_channels:
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
custom_channels:
conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
menpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
pytorch-lts: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
deepmodeling: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/
4.2 软件安装管理
#切换到 base 环境
conda activate base
#创建一个名为 test 的环境并指定 python 版本为3.7
conda create -n test python=3.7
#切换到 test 环境
conda activate test
#检索安装软件
conda search bedtools -c bioconda
conda install -y -c bioconda bedtools
conda install -y -c bioconda bedtools=2.30.0
which bedtools
/home/user/anaconda3/envs/test/bin/bedtools
#查看安装软件
conda list
# packages in environment at /home/user/anaconda3/envs/ngs:
#
# Name Version Build Channel
_libgcc_mutex 0.1 main defaults
_openmp_mutex 4.5 1_gnu defaults
bedtools 2.30.0 h7d7f7ad_1 bioconda
bzip2 1.0.8 h7b6447c_0 defaults
libgcc-ng 9.3.0 h5101ec6_17 defaults
libgomp 9.3.0 h5101ec6_17 defaults
libstdcxx-ng 9.3.0 hd4cf53a_17 defaults
xz 5.2.5 h7b6447c_0 defaults
zlib 1.2.11 h7b6447c_3 defaults
软件更新及删除
conda update bedtools
conda remove bedtools #y
#导出当前环境的包信息
conda env export > environment.yaml
#用配置文件创建新的虚拟环境
conda env create -f environment.yaml
4.3 r语言安装
conda install r-base #安装R语言
conda install r-stringi #安装R包
4.4 常用汇总
#创建Python虚拟环境
# 创建
conda create -n your_env_name python=3.7
your_env_name文件可以在Anaconda安装目录envs文件下找到
# 同时安装必要的包
conda create -n env_name numpy matplotlib python=3.7
如果经常需要用jupyter notebook,那么最好在创建虚拟环境的时候便安装好ipykernel:
conda create -n 环境名称 python=3.7 ipykernel
#切换环境
(conda) source activate your_env_name
#对虚拟环境中安装额外的包
conda install -n your_env_name [package]
# 关闭虚拟环境(即从当前环境退出返回使用PATH环境中的默认python版本)
conda deactivate env_name
#删除虚拟环境
conda remove -n your_env_name --all
#克隆虚拟环境
conda create -n newenv --clone oldenv
##重命名虚拟环境
conda create -n [newenv] --clone [oldenv]
conda remove -n [oldenv] --all
#删除环境中的某个包
conda remove --name $your_env_name $package_name
##conda版本
conda -V
##查看当前环境安装了哪些包
conda list
#查看当前存在哪些虚拟环境
conda env list
conda info -e
#检查更新当前conda
conda update conda