conda原本是為了解決Python模塊安裝的依賴問題,然而可能是無心栽柳柳成蔭,conda目前已經(jīng)超越了其最初目的而存在,可以解決大多數(shù)軟件的安裝和配置,包括各種本身與python毫無關(guān)系的包,也就涵蓋了,我們大多數(shù)的生物信息學軟件。而為此conda的軟件源有多種,其中專門收錄了生物信息學軟件的軟件源,亦即bioconda。所以bioconda僅僅是conda的軟件源之一,與bioconductor之于CRAN,bioperl之于CPAN是類似的。所以掌握bioconda,事實上也就是掌握conda,反之亦然。
可以安裝Anaconda,也可以安裝miniconda,具體如果沒有root權(quán)限,建議安裝后者,安裝過程類似,簡單,
wget "https://repo.continuum.io/archive/Anaconda3-5.0.1-Linux-x86_64.sh"
# 安裝程序
sudo sh Anaconda3-5.0.1-Linux-x86_64.sh
# 添加以下環(huán)境變量
sudo vim /etc/bashrcexport PATH=/tools/anaconda3/bin:$PATH
安裝完了conda,剩下的其實就只配置bioconda(其實就只是添加軟件源)
如果root身份運行則添加到全局,如果是用戶身份運行則會修改用戶主目錄下的.condarc文件,與bashrc, bashprofile等類似
conda config --add channels conda-forge
conda config --add channels defaults
conda config --add channels r
conda config --add channels bioconda
以上,無論是conda默認的軟件源還是bioconda軟件源都是國外的,速度非常慢,
所以需要增加國內(nèi)軟件源,同時bioconda已經(jīng)有清華,中科大兩個國內(nèi)鏡像,也添加進去
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --set show_channel_urls yes
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/
# biocondaconda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
conda config --set show_channel_urls yes
# 查看目前conda軟件源情況
conda info
使用conda/bioconda的過程其實也就是使用conda進行軟件的安裝和配置過程
主要的使用方法有兩種:
對于root,,有時候其他用戶需要一些軟件,安裝起來還是比較麻煩的,此時直接使用conda安裝,可能會非常方便,舉例,安裝bwconda install bwa
如此,bwa的安裝就完成了,可以直接在所有客戶的默認環(huán)境中使用,
在當前環(huán)境下直接使用conda進行軟件的安裝,事實上就與yum apt-get dnf類似,安裝軟件,同時將軟件配置到當前環(huán)境變量,對于anoconda而言,可能是 PATH/anaconda3/bin/bwa, 其中,在安裝anoconda的時候,PATH/anoconda/bin已經(jīng)被添到環(huán)境變量中 - 如果沒有,請自行添加
對于非root用戶而言,如果直接運行conda install bwa
,那么可能會受到寫入權(quán)限的限制,此時可以使用conda最靈活的操作,模擬虛擬環(huán)境(注意不是創(chuàng)建),
# 創(chuàng)建環(huán)境
conda create -n bioinfoSpace
# 加載環(huán)境--事實上,就是將這個環(huán)境中安裝了的軟件路徑添加到$PATH中
source activate bioinfoSpace
# 安裝各種自己需要的軟件,以供使用 --- 注意,此時已經(jīng)在模擬的虛擬環(huán)境中
conda install bwa bowtie# 此時可以使用這些軟件了
# 使用結(jié)束,可以退出環(huán)境,---conda也就是將這些軟件的路徑從$PATH變量中刪去
source deactivate
此外,對于模擬虛擬環(huán)境的這種使用方法上,其實還有一種非常常見的應(yīng)用場景,
亦即,服務(wù)器上安裝的是pythono3 而此時我們需要使用以下python2.7 ,卻不想調(diào)整系統(tǒng)配置,如何處理
condacreate-n py2 python=2.7
activate py2
# 使用完畢之后,退出
source deactivate
如果需要特定版本的軟件,比如samtools,怎么辦?conda install samtools=0.1.19
以上,在生物信息軟件中conda的安裝和使用,應(yīng)該都非常清楚了,
詳細的使用方法,可以參考conda 的 conda cheat sheet
聯(lián)系客服