Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >熟练使用Bioconda

熟练使用Bioconda

作者头像
生信喵实验柴
发布于 2021-12-16 02:50:23
发布于 2021-12-16 02:50:23
3.8K34
代码可运行
举报
文章被收录于专栏:生信喵实验柴生信喵实验柴
运行总次数:4
代码可运行

背景

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、下载安装:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
wget https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh

2、安装

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
sh Miniconda3-latest-Linux-x86_64.sh
source ~/.bashrc

3、添加软件源:

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

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
conda config --add channels bioconda
conda config --add channels conda-forge

以上步骤的效果是在每个用户的家目录下创建一个.condarc 文件,并将这些软件源写入该文件。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ cat ~/.condarc
channels:
 - conda-forge
 - bioconda
 - defaults

4、添加国内镜像

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

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
添加清华大学镜像
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/bioconda
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 管理软件的一些常用命令

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
查看已安装软件 
conda list 
搜索软件
conda search bwa
安装软件
conda install -y bwa=0.7.17
升级软件
conda update bwa
移除软件
conda remove bwa

三、mamba

相比于 conda,mamba 是用 c++重写了 conda 的部分功能,运行效率显著提高,可以进行并行的下载,使用 rpm 包管理工具中的 libsolv,可以更快的解决环境依赖问题。

mamba 的使用也比较简单,首先使用 conda 安装 mamba,后面所有用到 conda 的地方,都可以使用 mamba 替换即可。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
conda install -c conda-forge -y mamba
mamba install -y bwa
mamba install -y satools
mamba install -y bcftools
为 mamba 设置别名
alias 'conda= mamba'

四、使用 bioconda 安装常用软件

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
mamba install -y bwa
mamba install -y samtools
mamba install -y bcftools
mamba install -y blast
mamba install -y blat
mamba install -y mummer
mamba install -y mafft
mamba install -y muscle
mamba install -y lastz
mamba install -y sratools
mamba install -y seqkit
mamba install -y seqtk
mamba install -y bedtools
mamba install -y bedops
mamba install -y gfatools
mamba install -y circos
mamba install -y entrez-direct
mamba install -y emboss
安装数据质控软件
mamba install -y fastqc multiqc
mamba install -y trimmomatic
mamba install -y fastp
mamba create -n nanoplot -y nanoplot
安装基因组拼接相关工具
mamba install -y velvet
mamba install -y flye
mamba install -y miniasm
mamba install -y canu
mamba install -y megahit
mamba install -y spades
mamba install -y quast
mamba install -y racon
mamba install -y miniasm
mamba install -y nanopolish
安装基因功能分析软件
mamba install -y prodigal
mamba install -y glimmer
mamba install -y augustus
mamba install -y trf

五、利用 conda 管理 R 包

现在 R 包的功能越来越强大,已经不单纯是几个 R 自定义函数就能构成一个包了。很多 R包会集成很多 C 或者 python 的代码,所以需要额外编译,就又回到开源软件的死结:各种环境问题以及依赖问题,使用 bioconda 可以很好的管理 R 包。

R 的包一般都是以“r-”前缀,比如 R 语言本身为 r-base,如果 R 包来自于 bioconductor,则命令为 “bioconductor-”前缀。知道这些特点,就可以使用 bioconda 来管理 R 包了。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
安装 R 语言
mamba install -c conda-forge -y r-base=4.0.0
搜索默认 R
$ which R
~/miniconda3/bin/R
3、安装 R 包
mamba install -y r-tidyverse
搜索 deseq2 包
$ conda search deseq2
Loading channels: done
No match found for: deseq2. Search: *deseq2*
Name Version Build Channel 
bioconductor-deseq2 1.8.2 r3.2.2_0 bioconda 
bioconductor-deseq2 1.10.0 r3.2.2_0 bioconda 
bioconductor-deseq2 1.10.0 r3.2.2_1 bioconda 
bioconductor-deseq2 1.10.1 r3.2.2_0 bioconda
安装 deseq2 包
$ mamba install -y bioconductor-deseq2

六、升级 bioconda 全部软件

定期需要升级 bioconda 软件,如果想一次性升级全部软件,可以使用下面命令。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
更新基础 conda
mamba update -n base -c defaults conda
更新全部包
mamba update -y --all

七、常见问题

conda 在使用过程中会遇到很多问题。

7.1 搜索不到

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
ackagesNotFoundError: The following packages are not available from current
channels:

原因:

可能是没有配置 bioconda 或者 conda-forge 软件源或者写错了。或者软件名字有问题,或者库里面不存在该软件。

解决方法:

查看软件配置文件,尝试添加通配符扩大搜索范围。

7.2 搜索速度慢

conda 搜索或者安装初期一直在转圈,一直处于 solving environment 中。

原因:

这是因为 bioconda 中包含的软件越来越多,而且软件的不同版本都保留了下来,软件的索引文件越来越大,安装一个新软件时搜索满足环境中所有软件依赖的软件的搜索空间也会越来越大,导致 solving environment 越来越慢。

解决方法:

跳过搜索步奏,直接安装。

通过网页端搜索,然后直接安装;

安装时直接指定版本;

提高网络速度;

设置通道优先级高于软件版本优先级。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
conda config --set channel_priority strict

利用 mamba 替代 conda。

7.3 安装中断

安装过程中出现 core dump error/Segment fault 等错误。

原因:

出现这个错误原因很多,可能是硬件资源不够,也可能是软件版本冲突。

解决方法:

如果安装中断可以重新运行安装命令。也可以选择清空缓存

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 https://github.com/conda/conda/issues/7815
conda clean -a

7.4 版本冲突

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Encountered problems while solving:
- package blast-2.7.1-boost1.64_1 requires boost 1.64*, but none of the providers
can be installed

由于软件依赖与现有环境中的配置相冲突,导致软件无法安装成功。

解决方法:使用虚拟环境安装。

7.5 权限问题

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
The environment is inconsistent, please check the package plan carefully
The following packages are causing the inconsistency:

conda 目前并不能像 R 软件一样,为允许每个用户创建私有的库,如果使用系统管理员安装的 bioconda,那么普通用户不能使用 conda 继续安装软件,只能使用软件。

解决方法:

自己安装 biocodna 到个人目录下。

7.6 使用管理员安装的软件

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

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
使用软件全路径
/ifs1/Software/miniconda3/bin/bwa
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-12-15,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 生信喵实验柴 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
3 条评论
热度
最新
您好,请问7.2搜索速度慢,跳过搜索的具体步骤是什么呢?我在conda-forge上找的只有一行指令,谢谢
您好,请问7.2搜索速度慢,跳过搜索的具体步骤是什么呢?我在conda-forge上找的只有一行指令,谢谢
22点赞举报
可使用'--force'选项
可使用'--force'选项
回复回复点赞举报
谢谢!
谢谢!
回复回复点赞举报
推荐阅读
编辑精选文章
换一批
生信分析之conda安装
当我们使用服务器分析数据,我们使用miniconda,如果在自己的电脑上使用anaconda。Anaconda安装网上有很多教程,也可以在淘宝上买个安装服务(至少节省一上午时间)。
生信菜鸟团
2024/07/10
4780
生信分析之conda安装
Bioconda软件安装神器:多版本并存、环境复制、环境导出
2017年生信宝典发布了Linux学习 - 又双叒叕一个软件安装方法,现在根据使用经验做一些更新,主要是增加了conda环境的复制、导入和导出功能。最开始是为了培训时,学员更方便搭建流程引入的,现在分享出来,方便更多人使用。
生信宝典
2019/08/23
2.1K0
安装生物软件和配置数据库
当系统环境配置完成之后就可以开始安装生物软件了。生物软件安装有多种方式,可以直接使用源代码编译,也可以直接下载安装编译好的版本。当前还有 bioconda 方便管理生物软件。如果以上方式都很难安装成功软件,还可以使用 docker 的方法。如果是 ubuntu 系统,还可以直接使用 apt 命令安装生物软件。
生信喵实验柴
2022/10/25
1.1K0
06. Linux 介绍与工具使用(五:使用conda 下载并管理你的软件)
和苹果的app store, 手机的软件管家一样,linux 也提供了conda(miniconda)这样一个软件中心。
北野茶缸子
2021/12/17
1.4K0
06. Linux 介绍与工具使用(五:使用conda 下载并管理你的软件)
RNA-seq入门实战(零):RNA-seq流程前的准备——Linux与R的环境创建
连续两次求贤令:曾经我给你带来了十万用户,但现在祝你倒闭,以及 生信技能树知识整理实习生招募,让我走大运结识了几位优秀小伙伴!大家开始根据我的ngs组学视频进行一系列公共数据集分析实战,其中几个小伙伴让我非常惊喜,不需要怎么沟通和指导,就默默的完成了一个实战!
生信技能树
2022/06/27
3.3K0
RNA-seq入门实战(零):RNA-seq流程前的准备——Linux与R的环境创建
Nature Method:Bioconda解决生物软件安装的烦恼
其它之前很多人都用过Conda,特别是生信科学家近两年都在用Bioconda,那叫一个妙不可言、根本停不下来。这里我郑重通知大家,Bioconda于今年6月2号正式发表于Nature Methods(IF=26.9)。吃水不忘挖井人,用过的写文章记得引用它。
生信宝典
2019/10/14
1.7K0
Nature Method:Bioconda解决生物软件安装的烦恼
「毅硕|生信教程」 micromamba:mamba的C++实现,超越conda
大家是否有这样的经历,使用conda/anaconda进行环境配置的是否速度非常慢,进度经常卡在“Collecting package metadata”上。甚至有时候需要安装的软件比较多,或者需要用到conda-forge这个最大的channel,conda能一直卡在collecting步骤上直到http连接超时也没能处理完毕。直到有天小编发现了mamba这个工具,进而发现了micromamba(micromamba是mamba包管理器的小型版本,采用C++实现,具有mamba的核心功能,且体积更小,可以脱离conda独立运行,更易于部署),从此再也没有因为生信软件的安装配置而烦恼抓狂过。闲话少说,开始我们的教程。
INSVAST
2024/10/21
3870
「毅硕|生信教程」 micromamba:mamba的C++实现,超越conda
RNA-seq(1) :用conda安装RNA-seq所需要的工具
-添加镜像源:conda config -add conda config --show
Y大宽
2018/09/10
4.5K0
Linux:conda 的安装和使用
下载安装包 -- bash 安装 -- 接受协议 -- 选择默认安装路径(回车) -- 重新激活环境 -- 调用帮助文档
不会写代码的医学生
2024/03/24
5960
Conda 为什么越来越慢?
Conda 中包含的软件越来越多,而且软件的不同版本都保留了下来,软件的索引文件越来越大,安装一个新软件时搜索满足环境中所有软件依赖的软件的搜索空间也会越来越大,导致solving environment越来越慢。
章鱼猫先生
2021/10/15
3.6K0
Conda | 轻松安装生信工具
最近有很多朋友问我生信工具安装的问题,对于初学者来说,工具安装是一个非常头疼的问题。不同的工具用不同的语言编写,有的解压后直接就可以用,有的还要编译,涉及到各种依赖关系。今天小编教大家如何使用conda安装生信工具。
生信小王子
2020/08/10
1.9K0
服务器被关机,不妨试试看用你的Mac电脑跑NGS流程
现在我就分享一下我自己mac电脑的conda等生物信息学环境配置,提高大家的生产力!
生信技能树
2020/04/14
1.7K0
Linux学习 - 又双叒叕一个软件安装方法
Conda包管理系统 Conda是一种通用包管理系统,旨在构建和管理任何语言的任何类型的软件。通常与Anaconda (集成了更多软件包,https://www.anaconda.com/download/#download)和Miniconda(只包含基本功能软件包, https://conda.io/miniconda.html)一起分发。 最初接触到Anaconda是用于Python包的安装。Anaconda囊括了100多个常用的Python包,一键式安装,解决Python包安装的痛苦。但后来发现,其
生信宝典
2018/02/05
2.3K0
阅读量过万的conda使用总结,跨越一年的更新
conda分为anaconda和miniconda。anaconda是包含一些常用包的版本(这里的常用不代表你常用 微笑.jpg),miniconda则是精简版,需要啥装啥,所以推荐使用miniconda。
生信技能树
2019/10/09
2.1K0
阅读量过万的conda使用总结,跨越一年的更新
Linux-生信技能树
gff/gtf:9列,序列名字,注释来源,基因结构,起始位置,终止位置,碱基测序结果可信度,链的+向与-向,密码子偏移,其他属性
用户9966449
2023/02/16
2.2K0
Anaconda:解决你装包的烦恼
生物信息学的日常就是利用五花八门的工具和各种各样的数据打交道,很多时候需要在命令行安装软件或者包。我相信每一个生信人都碰到过安装软件或包时无法解决依赖的囧况,安装软件或者包,听起来是一件很简单的一件事,实际情况却不是如此。比如说编译时碰到系统lib不存在或版本太低,安装一个python/R包却需要升级当前的python/R,而这又会导致之前安装好的包不能使用。今天给大家介绍一下跨平台包管理神器Anaconda,学习一下它在Linux下的正确使用姿势。
阿凡亮
2020/04/14
8570
day3-Linux软件安装
miniconda是conda的精华版本,里面包含了conda、python和基础包
于是没有洗头
2024/10/23
1810
day3-Linux软件安装
R语言包管理
R 语言的一大优势就是有各种各样的扩展包,所谓 R 扩展包,就是将数据处理的算法通过 R函数来实现,再加上测试数据,说明文档整合在一起,就是 R 的扩展包。在使用 R 的过程中,肯定需要使用到 R 的包,因此,需要掌握 R 包的管理,包括包的查找,安装,加载,升级,取消加载,删除,查看帮助文档等等操作。
生信喵实验柴
2022/10/25
1.5K0
基于docker的生信基础环境镜像构建
这里参考snakemake的写法,每个分析步骤创建一个yaml文件,里面是用到的软件及版本。首次运行检测该步骤环境存在,不存在先安装软件初始化。
SliverWorkspace
2022/08/11
1.5K0
基于docker的生信基础环境镜像构建
可重复的生信分析系列二:Conda的介绍
可重复的生信分析一直是未来的趋势。如果实现可重复的生信分析,关键在于分析软件版本的控制,一致的环境设置还有良好的分析流程的记录。Conda可以说是版本控制和生信工具安装的一大神器。相信大家对它了解肯定不少,但是又该怎么样利用它,进行可重复的分析呢?今天继续讲第二部分 Conda的介绍。
生信菜鸟团
2020/03/30
1.8K0
推荐阅读
相关推荐
生信分析之conda安装
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验