生信人

找回密码
立即注册
搜索
热搜: 活动 交友 discuz
发新帖

0

收听

12

听众

278

主题
发表于 2021-12-14 10:01:43 | 查看: 2313| 回复: 1
本帖最后由 生信喵 于 2021-12-14 16:35 编辑

背景
      bioconda 是一个管理生物信息软件的一个工具软件,可以将 bioconda 当成生物信息软件的AppStore。它基于 Anaconda 可以进行生物软件的搜索,下载,安装,升级,删除等操作。通过一条命令即可完成绝大部分生物软件的安装。目前已经是最好的生物软件管理工具之一,目前支持超过 7000 多款生物软件的安装。
      官方网址:http://bioconda.github.io/
      目前已经有超过 7000 多款生物都几件可以通过 bioconda 直接安装。
      https://anaconda.org/bioconda/repo
      为什么要选择使用 bioconda,因为其很好的解决了生物软件安装过程中的各种问题,主要包括以下几点:
      1、自动解决了软件依赖问题,实现一条命令可以安装很多软件;
      2、bioconda 可以很方便进行软件升级;
      3、无需管理员权限也可以安装很多软件;
      4、可以同时管理软件的多个版本
      5、所有软件安装在同一目录下,方便进行管理和迁移。

一、bioconda 软件安装
      要想使用 bioconda 来安装生物软件,首先要安装 bioconda。bioconda 来自与 Anaconda 软件,本质上只是 Anaconda 一个单独的生物软件源。经常看到 Anaconda,Miniconda 以及bioconda,三者之间有什么关系呢?
      Anaconda: 集合了常用 Python 包的数据科学平台 (full)
      Miniconda:精简版 Anaconda (Lite)
      bioconda: 专门用来管理生物软件 (定制版)
      Anaconda 和 Miniconda 是软件,bioconda 只是一个特定的软件源。三者的管理工具都是conda 命令。
      下图形象的展示了三者的关系

      要想使用 bioconda,需要三个步骤,下载软件,安装软件,添加软件源。
1、下载安装:

  1. wget https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh
复制代码

2、安装

  1. sh Miniconda3-latest-Linux-x86_64.sh
  2. source ~/.bashrc
复制代码

3、添加软件源:
      目前 bioconda 提供是两个软件源,分别是 biconda 和 conda-forge,默认的 defaults 是用来管理 python 相关的包。bioconda 是官方维护的软件源,conda-forge 通道是社区维护的,包含很多不在默认通道里面的通用型软件。安装完成之后需要将这两个软件源都添加进来。

  1. conda config --add channels bioconda
  2. conda config --add channels conda-forge
复制代码
     以上步骤的效果是在每个用户的家目录下创建一个.condarc 文件,并将这些软件源写入该文件。
  1. $ cat ~/.condarc
  2. channels:
  3. - conda-forge
  4. - bioconda
  5. - defaults
复制代码

4、添加国内镜像

      目前国内清华大学以及北京外国语大学等也提供 biocodna 的镜像,可以将这些镜像添加进来,替换官方镜像。但目前 bioconda 官方镜像速度还可以,且国内镜像如果有多人访问时会造成拥堵,反而更慢了,具体使用看个人需求。

  1. 添加清华大学镜像
  2. conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
  3. conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
  4. conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/bioconda
  5. conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
复制代码


二、利用 bioconda 管理生物软件
      安装并且配置完 bioconda 之后,就可以使用 bioconda 来管理生物软件了。可以经行搜索(search),安装(install),升级(update),卸载(remove)等操作。下面给出 bioconda一些常用功能。
      bioconda 常用选项参数
info 显示某个软件信息
help 给出帮助信息
list 查看所有安装的软件
search 查找安装的软件
create 创建一个新的 conda 环境
install 安装需要的软件
update 对软件进行升级
upgrade 与 update 相同
remove 卸载已经安装的软件
uninstall 与 remove 相同
config 配置软件源
clean 移除没用的软件安装包和缓冲
package 低配版软件工具,还在实验中

      安装并添加软件源之后就可以使用 bioconda 进行软件安装了。首先根据软件名进行搜索,如果可以搜索到,就可以使用 install 进行安装了。
      不过由于 bioconda 目录结构过大,每个软件又有不同的版本,因此搜索速度较慢,最好直接知道软件名,或者通过网页端进行搜索。
      网页端搜索 bwa 软件结果

      下面是 bioconda 管理软件的一些常用命令
  1. 查看已安装软件
  2. conda list
  3. 搜索软件
  4. conda search bwa
  5. 安装软件
  6. conda install -y bwa=0.7.17
  7. 升级软件
  8. conda update bwa
  9. 移除软件
  10. conda remove bwa
复制代码

三、mamba
      相比于 conda,mamba 是用 c++重写了 conda 的部分功能,运行效率显著提高,可以进行并行的下载,使用 rpm 包管理工具中的 libsolv,可以更快的解决环境依赖问题。
      mamba 的使用也比较简单,首先使用 conda 安装 mamba,后面所有用到 conda 的地方,都可以使用 mamba 替换即可。

  1. conda install -c conda-forge -y mamba
  2. mamba install -y bwa
  3. mamba install -y satools
  4. mamba install -y bcftools
  5. 为 mamba 设置别名
  6. alias 'conda= mamba'
复制代码


四、使用 bioconda 安装常用软件
  1. mamba install -y bwa
  2. mamba install -y samtools
  3. mamba install -y bcftools
  4. mamba install -y blast
  5. mamba install -y blat
  6. mamba install -y mummer
  7. mamba install -y mafft
  8. mamba install -y muscle
  9. mamba install -y lastz
  10. mamba install -y sratools
  11. mamba install -y seqkit
  12. mamba install -y seqtk
  13. mamba install -y bedtools
  14. mamba install -y bedops
  15. mamba install -y gfatools
  16. mamba install -y circos
  17. mamba install -y entrez-direct
  18. mamba install -y emboss
  19. 安装数据质控软件
  20. mamba install -y fastqc multiqc
  21. mamba install -y trimmomatic
  22. mamba install -y fastp
  23. mamba create -n nanoplot -y nanoplot
  24. 安装基因组拼接相关工具
  25. mamba install -y velvet
  26. mamba install -y flye
  27. mamba install -y miniasm
  28. mamba install -y canu
  29. mamba install -y megahit
  30. mamba install -y spades
  31. mamba install -y quast
  32. mamba install -y racon
  33. mamba install -y miniasm
  34. mamba install -y nanopolish
  35. 安装基因功能分析软件
  36. mamba install -y prodigal
  37. mamba install -y glimmer
  38. mamba install -y augustus
  39. mamba install -y trf
复制代码

五、利用 conda 管理 R 包
      现在 R 包的功能越来越强大,已经不单纯是几个 R 自定义函数就能构成一个包了。很多 R包会集成很多 C 或者 python 的代码,所以需要额外编译,就又回到开源软件的死结:各种环境问题以及依赖问题,使用 bioconda 可以很好的管理 R 包。
      R 的包一般都是以“r-”前缀,比如 R 语言本身为 r-base,如果 R 包来自于 bioconductor,则命令为 “bioconductor-”前缀。知道这些特点,就可以使用 bioconda 来管理 R 包了。
  1. 安装 R 语言
  2. mamba install -c conda-forge -y r-base=4.0.0
  3. 搜索默认 R
  4. $ which R
  5. ~/miniconda3/bin/R
  6. 3、安装 R 包
  7. mamba install -y r-tidyverse
  8. 搜索 deseq2 包
  9. $ conda search deseq2
  10. Loading channels: done
  11. No match found for: deseq2. Search: *deseq2*
  12. Name Version Build Channel
  13. bioconductor-deseq2 1.8.2 r3.2.2_0 bioconda
  14. bioconductor-deseq2 1.10.0 r3.2.2_0 bioconda
  15. bioconductor-deseq2 1.10.0 r3.2.2_1 bioconda
  16. bioconductor-deseq2 1.10.1 r3.2.2_0 bioconda
  17. 安装 deseq2 包
  18. $ mamba install -y bioconductor-deseq2
复制代码

六、升级 bioconda 全部软件
      定期需要升级 bioconda 软件,如果想一次性升级全部软件,可以使用下面命令。
  1. 更新基础 conda
  2. mamba update -n base -c defaults conda
  3. 更新全部包
  4. mamba update -y --all
复制代码

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

发表于 2021-12-14 10:02:10
本帖最后由 生信喵 于 2021-12-14 16:35 编辑

七、常见问题
      conda 在使用过程中会遇到很多问题。
7.1 搜索不到
  1. ackagesNotFoundError: The following packages are not available from current
  2. channels:
复制代码
原因:
      可能是没有配置 bioconda 或者 conda-forge 软件源或者写错了。或者软件名字有问题,或
者库里面不存在该软件。
解决方法:
      查看软件配置文件,尝试添加通配符扩大搜索范围。

7.2 搜索速度慢
      conda 搜索或者安装初期一直在转圈,一直处于 solving environment 中。
原因:
      这是因为 bioconda 中包含的软件越来越多,而且软件的不同版本都保留了下来,软件的索引文件越来越大,安装一个新软件时搜索满足环境中所有软件依赖的软件的搜索空间也会越来越大,导致 solving environment 越来越慢。
解决方法:
      跳过搜索步奏,直接安装。
      通过网页端搜索,然后直接安装;
      安装时直接指定版本;
      提高网络速度;
      设置通道优先级高于软件版本优先级。

  1. conda config --set channel_priority strict
复制代码
     利用 mamba 替代 conda。

7.3 安装中断
      安装过程中出现 core dump error/Segment fault 等错误。
原因:
      出现这个错误原因很多,可能是硬件资源不够,也可能是软件版本冲突。
解决方法:
      如果安装中断可以重新运行安装命令。也可以选择清空缓存

  1. https://github.com/conda/conda/issues/7815
  2. conda clean -a
复制代码

7.4 版本冲突

  1. Encountered problems while solving:
  2. - package blast-2.7.1-boost1.64_1 requires boost 1.64*, but none of the providers
  3. can be installed
复制代码
     由于软件依赖与现有环境中的配置相冲突,导致软件无法安装成功。
解决方法:使用虚拟环境安装。

7.5 权限问题

  1. The environment is inconsistent, please check the package plan carefully
  2. The following packages are causing the inconsistency:
复制代码
     conda 目前并不能像 R 软件一样,为允许每个用户创建私有的库,如果使用系统管理员安装的 bioconda,那么普通用户不能使用 conda 继续安装软件,只能使用软件。
解决方法:
      自己安装 biocodna 到个人目录下。


7.6 使用管理员安装的软件
      如果自己安装了 biocodna,同时要使用管理员安装的 bioconda 安装的软件,这个时候,可以使用软件的全路径。

  1. 使用软件全路径
  2. /ifs1/Software/miniconda3/bin/bwa
复制代码



回复 显示全部楼层 道具 举报

您需要登录后才可以回帖 登录 | 立即注册

QQ|Archiver|手机版|小黑屋|生信人

GMT+8, 2024-4-30 03:27 , Processed in 0.041854 second(s), 21 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表