1. Conda安装

如BioConda官网[1]所说,BioConda需要Conda安装环境,如果你使用过Anaconda python安装环境,那么你已经有了Conda安装环境,否则,最好的办法是安装Miniconda。

从Miniconda的官网上[2]下载最新版与你使用的系统对应的安装器,例如我使用的是64位Linux系统、Python2.7,那么代码如下:

wget  https://repo.continuum.io/miniconda/Miniconda2-latest-Linux-x86_64.sh

bash Miniconda2-latest-Linux-x86_64.sh

# 注意:这里一定要用bash命令来运行sh脚本!如果直接使用sh Miniconda2-latest-Linux-x86_64.sh则会报错。

运行过程中会问起,是否安装在$HOME目录下,是否将路径写到.bashrc中。一路回车即可。

注意:第二个坑——这时在终端运行conda居然没有!这是因为安装时conda路径仅写到了~/.bashrc中,但是并没有source。

在source之前建议修改一个新加入的这个路径,将其修改为

export PATH="$PATH:$HOME/miniconda2/bin"

# 即将$PATH移到miniconda之前,这样如果有复盖,系统会先搜索之前安装的程序再找miniconda安装的

再source一下:

source  ~/.bashrc

# 这时再运行conda时可以正常显示

2. 设置conda的channels

conda config --add channels r

conda config --add channels defaults  # conda环境默认仅装了这一个channel

conda config --add channels conda-forge

conda config --add channels bioconda

目前清华大学提供了一个conda的镜像,添加后可以非常快速的下载软件,具体添加方法如下:
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
conda config --set show_channel_urls yes

# 完成后打开$HOME/.condarc可以查看到结果

〔lurui@bio ~〕$ cat ~/.condarc
channels:
 - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
 - bioconda
 - conda-forge
 - defaults
 - r
show_channel_urls: true

3. 安装软件

这里有>2700个生信包可以直接安装!安装方法例如:

conda install star

# 完成后STAR安装在了~/miniconda2/bin/目录下,因为这个目录已加入系统路径,因此可以直接运行STAR(注意大小写)

# 注:根据经验来看软件名一般会是全小写的格式

有时候网络不好会出现以下报错,这时需要再多连接几次:

除了以上简单的安装外,还可以建立工作空间将几个相应的软件装到一起,例如我想将几种比对的软件装在一个叫做aligners的环境下:

conda  create  -n  aligners  bwa  bowtie  hisat2

注:如果系统中已经安装了该软件,conda不会再进行安装

这种分组安装的办法将软件安装在$HOME/miniconda2/envs/aligners/bin/目录下(其中aligners即conda create -n选项指定的环境名)

用时需指定路径,例如想用aligners中的hisat2需要

$HOME/miniconda2/envs/aligner/bin/hisat2

如果想卸载某软件(例如刚才安装的star),可以使用

conda uninstall star

或conda remove star

# 注意:conda不会卸载系统中原来安装的软件,它只会卸载~/miniconda2/bin/目录中的软件,所以可以放心使用

以下代码可以列出$HOME/miniconda2中的安装的所有程序

conda list

另外,conda还有upgrade和search比较常用。其它的可以直接在终端输入conda查看。

4. 设置一个新环境

conda可以形成一个独立的安装环境,那可不可以同时生成另外一个独立的安装环境? 例如在某些情况下我想用samtools 1.3,但在某些情况下其它软件依赖samtools 0.1.19,这两个版本都很经典,但是安装在一个环境下samtools只能两者选某一。这时我们可以用conda create创建一个独立的环境

/home/lurui/miniconda2/bin/conda create -n sibling

# 其中sibling表示这个环境的名字,可自选

新环境建成后需使用以下代码激活该环境:

source activate sibling

注意:这时会在命令行提示符前有一个(sibling),表示已经在这个环境下

再使用conda install在这个新环境下装软件

/home/lurui/miniconda2/bin/conda install samtools=0.1.19

装完后在命令行直接输入samtools可以看到使用的是0.1.19版的samtools

想要退出sibling环境可以使用以下代码

source deactivate

5. Tips

2.1 用conda安装perl包

如果如下图中报错,而且同时有管理员权限,可以使用我的另一篇博文(http://blog.sciencenet.cn/blog-2970729-1068147.html)中的方法安装;如果没有管理员权限,可以使用这里介绍的方法来安装

首先建议在bioconda官网https://anaconda.org/bioconda/repo搜索一下相关perl包,搜索的格式如perl-archive-extract(perl-父模块全小写-子模块全小写)这时会出现以下搜索结果,表明bioconda中有这个perl包。

可直接在终端使用以下命令

conda install perl-archive-extract

当然搞清楚了perl安装包的命名规则后也可以直接在终端用以下命令搜索

conda search perl-archive-extract

参考材料

[1] https://bioconda.github.io/

[2] https://conda.io/miniconda.html

bioconda文档提到,使用之前需要先配置频道(channel),我安装的是conda,没有配置过,bioconda已经存在:

% conda config --get channels

--add channels 'defaults'
--add channels 'r'
--add channels 'bioconda'
--add channels 'https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/'

conda还有一个很赞的特性:工作环境(environment),比如我现在使用的是Python2.7,但是个别时候还需要用Python3,就可以新建一个环境:

% conda create -n py35 python=3.5 anaconda #指定使用Python3.5
% source activate py35 #切换为Python3.5
% source deactivate py35 #切换到默认版本
conda配置

conda使用的默认软件源,在目前的网络环境下很慢,尤其是安装numpy这样要下载几十M数据的情况下。是的,你可能猜到我要说什么了,换国内的镜像。在家目录下,新建一个名为“.condarc”的文件,内容参考如下:

channels:
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
- bioconda
- r
- defaults

确保镜像的网址在前面,因为conda读取频道列表时是从上到下进行的。

3.添加国内源,解决下载慢的问题

Bioconda默认的chanel都在国外,下载软件非常缓慢,我们可以添加国内的chanel,以提高下载速度:

  1. conda config —add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
  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/cloud/bioconda/

BioConda--转载的更多相关文章

  1. Crystal Clear Applied: The Seven Properties of Running an Agile Project (转载)

    作者Alistair Cockburn, Crystal Clear的7个成功要素,写得挺好. 敏捷方法的关注点,大家可以参考,太激动所以转载了. 原文:http://www.informit.com ...

  2. RTP与RTCP协议介绍(转载)

    RTSP发起/终结流媒体.RTP传输流媒体数据 .RTCP对RTP进行控制,同步.RTP中没有连接的概念,本身并不能为按序传输数据包提供可靠的保证,也不提供流量控制和拥塞控制,这些都由RTCP来负责完 ...

  3. 《Walking the callstack(转载)》

    本文转载自:https://www.codeproject.com/articles/11132/walking-the-callstack Download demo project with so ...

  4. [转载]MVVM模式原理分析及实践

    没有找到很好的MVVM模式介绍文章,简单找了一篇,分享一下.MVVM实现了UI\UE设计师(Expression Blend 4设计界面)和软件工程师的合理分工,在SilverLight.WPF.Wi ...

  5. [转载]:STM32为什么必须先配置时钟再配置GPIO

    转载来源 :http://blog.csdn.net/fushiqianxun/article/details/7926442 [原创]:我来添两句,就是很多同学(包括我)之前搞低端单片机,到了stm ...

  6. [转载]从MyEclipse到IntelliJ IDEA-让你摆脱鼠标,全键盘操作

    从MyEclipse转战到IntelliJ IDEA的经历 注转载址:http://blog.csdn.net/luoweifu/article/details/13985835 我一个朋友写了一篇“ ...

  7. TCP同步与异步,长连接与短连接【转载】

    原文地址:TCP同步与异步,长连接与短连接作者:1984346023 [转载说明:http://zjj1211.blog.51cto.com/1812544/373896   这是今天看到的一篇讲到T ...

  8. 在CentOS 7/6.5/6.4 中安装Java JDK 8(转载)

    转载在CentOS 7/6.5/6.4 中安装Java JDK 8 首先,在你的服务器上运行一下更新. yum update 然后,在您的系统上搜索,任何版本的已安装的JDK组件. rpm -qa | ...

  9. 用C#实现MD5的加密(转载)

    方法一 首先,先简单介绍一下MD5 MD5的全称是message-digest algorithm 5(信息-摘要算法,在90年代初由mit laboratory for computer scien ...

  10. [转载]iOS 10 UserNotifications 框架解析

    活久见的重构 - iOS 10 UserNotifications 框架解析 TL;DR iOS 10 中以前杂乱的和通知相关的 API 都被统一了,现在开发者可以使用独立的 UserNotifica ...

随机推荐

  1. Unable to open socket file: target process not responding or HotSpot VM not loaded

    Unable to open socket file: target process not responding or HotSpot VM not loaded The -F option can ...

  2. 算法提高 c++_ch02_01 (强制类型转换)

    编写一个程序,利用强制类型转换打印元音字母大小写10种形式的ASCII码. 输出的顺序为:大写的字母A,E,I,O,U的ASCII码,小写的字母a,e,i,o,u的ASCII码.所有的ASCII码都用 ...

  3. Zsh和oh my zsh的安装和使用

    Zsh 兼容 Bash,据传说 99% 的 Bash 操作 和 Zsh 是相同的,默认 CentOS / Ubuntu / Mac 系统用的是 Bash,倒也不是说 Bash 不好,而是说我们有更好的 ...

  4. right spindle supply short to gnd

    hardware guy found that the R1004 lead to this error, but this error should not be checked, because ...

  5. git clone 报错Unable to negotiate with xxx.xxx.xxx.xxx port 12345: no matching key exchange method found. Their offer: diffie-hellman-group1-sha1

    在执行git clone命令报错 Unable to negotiate with xxx.xxx.xxx.xxx port 12345: no matching key exchange metho ...

  6. windows下常用linux对应工具

    tail 可从http://files.cnblogs.com/hantianwei/tail.zip下载,解压后exe,如下: e:\>tail -fn 300 tool-slow.logus ...

  7. Linux CentOS 7的图形界面安装(GNOME、KDE等)

    转载于:https://jingyan.baidu.com/article/0964eca26fc3b38284f53642.html 今天为大家介绍一下CentOS 7的图像界面安装(虚拟机和硬盘安 ...

  8. 【题解】Luogu P1972 [SDOI2009]HH的项链

    原题传送门 莫队入门题 我博客里对莫队的介绍 很多人说这题卡莫队,但窝随便写了一个程序就过了qaq(虽说开了氧化) 我们在排序询问时,普通是这样qaq inline bool cmp(register ...

  9. Redis热点Key发现及常见解决方案!

    一.热点Key问题产生的原因 1.用户消费的数据远大于生产的数据(热卖商品.热点新闻.热点评论.明星直播). 在日常工作生活中一些突发的的事件,例如:双十一期间某些热门商品的降价促销,当这其中的某一件 ...

  10. mysql 的delete from 和update子查询限制

    最经做项目时发现的问题,好像在update时也有... 网上查到的资料如下: 1.使用mysql进行delete from操作时,若子查询的 FROM 字句和更新/删除对象使用同一张表,会出现错误. ...