conda的安裝與使用(2021-04-27更新)https://repo.anaconda.com/archive/


 

 

 

 

 

 

 

 

 

 

 

 

 

 

2021-04-27 update: 更新了提供conda鏡像的大學的列表
2021-04-13 更新預告: 本來打算在閱讀量過40萬的時候更新一遍新的內容的. 但是時間精力實在是不允許我從頭寫一遍這個系列了. 所以目前的打算是在這個原文上直接進行修改. 把原文復制一份作為存檔, 直接把過時的內容給刪掉, 更新成新的.
2020-08-10 update: 添加了兩個新的國內鏡像.
2020-08-06 update: 添加了北外的conda頻道,添加一些conda的報錯信息及解決方法。
2020-07-08 update:更新了底部洲更學長的軟件安裝課程,現在已經在B站免費觀看了~歡迎小伙伴們素質三連~
2020-06-14 update: 更新了mac用戶的miniconda下載鏈接、更新了北外的鏡像站點、修正了之前不將conda加入環境變量的刻板印象
2019-06-28 update: 增加刪除、重命名conda環境的操作
2019-06-17 update: 普大喜奔!清華恢復了conda的鏡像!清華🐮🍺!附上最新的添加清華鏡像的命令!
2019-06-12 update: 發現了一個新的anaconda repo叫genomedk,添加了hoptop的搭建本地conda鏡像的教程
2019-05-16 update: 有的小伙伴不知道怎么添加官方源,這邊補充一下
2019-05-07 update: 萬萬沒想到,騰訊的鏡像比清華的先掛了……
2019-04-29 update: 更新了新的查找軟件的recipe,更新了騰訊源來取代即將掛掉的清華源


有很多的生信軟件都可以通過conda安裝,省去了很多的安裝、修bug的煩惱。經常是安裝到崩潰的軟件,conda一行命令就搞定了。前兩天有個胖友問我gatk 3.8的版本在哪里下,下載好了之后怎么安裝,我果斷打開了https://bioconda.github.io/recipes ,告訴她安裝conda吧,只要一行命令conda install gatk就行了。
(2019-04-29 update:這個網址已經掛掉了,請改用:https://anaconda.org/bioconda/repo,或者直接用bing/google搜“conda gatk” 這樣的關鍵詞,基本上跳出來的第一個就是。
然后她很可愛的問我conda怎么裝。。果斷就把這篇教程丟給她了,但是發現現在的用法和以前的不是很一樣了,所以就把原來的教程更新了一下以饗讀者。

 
你要的gatk

conda簡介

Conda 是一個開源的軟件包管理系統和環境管理系統,用於安裝多個版本的軟件包及其依賴關系,並在它們之間輕松切換。 Conda 是為 Python 程序創建的,適用於 Linux,OS X 和Windows,也可以打包和分發其他軟件。

安裝conda

conda分為anaconda和miniconda。anaconda是包含一些常用包的版本(這里的常用不代表你常用 微笑.jpg),miniconda則是精簡版,需要啥裝啥,所以推薦使用miniconda。

下載網址

miniconda官網:https://conda.io/miniconda.html

選擇適合自己的版本,用wget命令下載。

wget -c https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh # 這個版本是適合於linux的,要看清楚噢。 # mac用戶請用: curl -O https://repo.anaconda.com/miniconda/Miniconda3-latest-MacOSX-x86_64.sh # mac用戶選擇圖形化界面的anaconda版本也可。 # 傳送門:https://www.anaconda.com/products/individual # 往下翻,選擇64-Bit Graphical Installer 

這里選擇的是latest-Linux版本,所以下載的程序會隨着python的版本更新而更新(現在下載的版本默認的python版本已經是3.7了)

安裝命令

chmod 777 Miniconda3-latest-Linux-x86_64.sh #給執行權限
bash Miniconda3-latest-Linux-x86_64.sh #運行

注意,以前的教程都是教一路yes下來的,但是會有隱患,特別是當你的服務器之前有安裝過軟件的話,conda會污染你原來的環境,把你原來設置好的東西進行更改。具體的慘痛教訓請參見:
Anaconda is a snake.

2020-06-14 update: 從下面不加入環境變量這一步開始,其實是非必須的(也就是正常的加入環境變量即可)。之前所謂的會污染環境等等問題可能都是將大量的軟件直接安裝在conda的base環境中引起的,只要養成好的使用習慣,靈活使用conda create 命令將不同的軟件安裝到自己單獨的虛擬環境中就可以了。把conda這條蟒蛇關進一個一個的籠子里,才能更好的為我們的科研服務~

所以在詢問是否將conda加入環境變量的時候選擇no。

 
選擇no

啟動conda(非必須步驟)

2020-06-14 update: 只要正常的按照安裝提示進行啟動即可

在上一步選擇no之后,輸入conda是會報找不到此命令的。那要如何啟動呢?
找到你剛才安裝的miniconda,如果沒有更改過安裝位置的話應該是在/home下面,cd到miniconda3的bin目錄下面,能看到有一個activate。

 
activate

這里需要給 activate添加一下權限才能使用

 

chmod 777 activate 

接下來啟動conda

. ./activate #這里的第一個點跟source是一樣的效果,我比較懶。

 

 
成功啟動conda

當命令行前面出現 (base)的時候說明現在已經在conda的環境中了。這時候輸入 conda list 命令就有反應了
 
conda list

 

添加頻道

2019-05-16 update: 這個道理跟家里的電視機是一樣一樣的,安裝conda就相當於買了一台電視機,但是有電視了不意味着你就能看節目了,你要手動添加頻道才能看你想看的電視節目。
官方channel: (先不要急着添加這兩個哦~,只要添加下面的清華的4個鏡像地址就足夠了的~)

conda config --add channels bioconda conda config --add channels conda-forge 

官方的話這兩個channel應該就夠了的。

2020-06-14 update:但是其實現在用國內的鏡像比較多,官方的頻道相較而言速度較慢。但也不是絕對的,有小伙伴跟我說他使用官方的頻道也很流暢,所以見仁見智啦。另外,不建議加入大量的相同的頻道,如添加了官方的bioconda之后又添加清華的bioconda鏡像,沒有必要,而且會拖慢速度。

2019-06-12 update:最近在裝raxml-ng的時候發現了一個新的channel叫genomedk,各位也可以添加到condarc里去 👇

# 這個頻道有的時候會引起網絡錯誤, 網絡不穩定的朋友不建議加. conda config --add channels genomedk 

順便安利一個我hoptop學長的教程:如何搭建一個本地的conda鏡像(包含bioconda)供各位愛折騰的高端玩家。
2019-06-17 update: 清華恢復了conda 的鏡像了!詳情請看下面:
Anaconda 鏡像即將恢復
借花獻佛給大家復習一遍如何添加清華的鏡像channels: 來源 → 生信媛: 喜大普奔: Anaconda的清華鏡像又可以用了

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

2020-06-14 update: 為了分擔清華源鏡像的壓力,最近北京外國語大學也開啟了鏡像站點,同樣是由清華TUNA團隊維護的,如果有小伙伴遇到清華源速度很慢的情況的話,可以考慮換成北外的鏡像。
新聞傳送門:https://mirrors.tuna.tsinghua.edu.cn/news/bfsu-mirror/
鏡像傳送門:https://mirrors.bfsu.edu.cn/help/anaconda/
2020-08-05 update: 為了方便大家(當然主要是自己偷懶用), 把北外的鏈接也給寫出來, 這樣就可以直接復制粘貼了~當然兩者取其一就可以了, 不用重復添加.
另外, 我查看了中科大的鏡像https://mirrors.ustc.edu.cn/anaconda, 點擊這個地址會直接跳轉到清華tuna的鏡像站點. 所以目前看起來國內是只有清華和北外兩個鏡像站點可用了~如果有小伙伴知道還有別的鏡像可以用的話歡迎在下面留言或者私信我鴨!

conda config --add channels https://mirrors.bfsu.edu.cn/anaconda/cloud/bioconda/ conda config --add channels https://mirrors.bfsu.edu.cn/anaconda/cloud/conda-forge/ conda config --add channels https://mirrors.bfsu.edu.cn/anaconda/pkgs/free/ conda config --add channels https://mirrors.bfsu.edu.cn/anaconda/pkgs/main/ 下面這個我沒用過, 但是看起來像是R的頻道, 可以添加一下試試看. conda config --add channels https://mirrors.bfsu.edu.cn/anaconda/pkgs/r/ 

如果你需要其他的更多的頻道,請訪問這個地址👉: https://mirrors.bfsu.edu.cn/help/anaconda/ 里面有詳細的指導噠

2021-04-27 update: 更新了提供conda鏡像的大學的列表
目前國內提供conda鏡像的大學

清華大學: https://mirrors.tuna.tsinghua.edu.cn/help/anaconda/
北京外國語大學: https://mirrors.bfsu.edu.cn/help/anaconda/
南京郵電大學: https://mirrors.njupt.edu.cn/
南京大學: http://mirrors.nju.edu.cn/
重慶郵電大學: http://mirror.cqupt.edu.cn/
上海交通大學: https://mirror.sjtu.edu.cn/
哈爾濱工業大學: http://mirrors.hit.edu.cn/#/home
(目測哈工大的鏡像同步的是最勤最新的)


如果清華的或者北外的

顯示安裝的頻道

 conda config --set show_channel_urls yes 

查看已經添加的channels

conda config --get channels 

已添加的channel在哪里查看

vim ~/.condarc

利用conda安裝生物信息軟件

安裝命令:

 conda install gatk

搜索需要的安裝包:

提供一個網址,用於事先查找想安裝的軟件存不存在
conda available packages
2020-06-14 update: 鏈接已掛,請選擇用下面的conda search命令或者開頭提供的更新的網址
當然, 也可以用這個命令進行搜索(會稍微慢一點)

 conda search gatk

安裝完成后,可以用“which 軟件名”來查看該軟件安裝的位置:

 which gatk

如需要安裝特定的版本:

conda install 軟件名=版本號
conda install gatk=3.7

這時conda會先卸載已安裝版本,然后重新安裝指定版本。

查看已安裝軟件:

conda list

更新指定軟件:

conda update gatk

卸載指定軟件:

conda remove gatk 

退出conda環境

退出也很簡單,之前我們是. ./activate 或者 (. ~/miniconda3/bin/activate)現在退出只要:

. ./deactivate
# 或者用 
conda deactivate

就退出當前的環境了

創建軟件的軟鏈接(非必須步驟)

跟着命令一路敲到這里的小旁友們估計發現了,現在退出conda環境之后之前安裝的軟件全都GG了,敲命令沒法執行了!
怎么辦呢!其實只要把安裝好的軟件軟連接到一個處在環境變量里的位置就可以使用了。三步走:

  • 第一步,創建一個文件夾
    我一般的習慣是在/home目錄下創建一個.soft文件夾
  • 第二步,將這個文件夾添加到環境變量中
export PATH="~/.soft:$PATH"
  • 第三步,軟鏈接
ln -s ~/miniconda3/bin/gatk ~/.soft 

這樣就可以運行啦~如果還是不行建議試試初始化一下bashrc:. ./bashrc

創建conda環境(常用步驟,強烈推薦)

之前創建的時候顯示的是(base)這是conda的基本環境,有些軟件依賴的是python2的版本,當你還是使用你的base的時候你的base里的python會被自動降級,有可能會引發別的軟件的報錯,所以,可以給一些特別的軟件一些特別的關照,比如創建一個單獨的環境。
在conda環境下,輸入conda env list(或者輸入conda info --envs也是一樣滴)查看當前存在的環境:

conda env list # 這是我相當常用的一條命令了,建議記一記 
 
目前的環境

目前只有一個base

conda create -n python2 python=2
# -n: 設置新的環境的名字
# python=2 指定新環境的python的版本,非必須參數
# 這里也可以用一個-y參數,可以直接跳過安裝的確認過程。

conda會創建一個新的python2的環境,並且會很溫馨的提示你只要輸入conda activate python2就可以啟動這個環境了


 
新的環境

退出環境

如上面的截圖提到的,只要

conda deactivate

2019-6-28 update: 如何刪除和重命名一個已存在的環境

刪除環境

刪除也很容易的

conda remove -n myenv --all 

就可以退出當前環境。
掌握了創建和刪除我們就可以實現重命名的操作了

重命名環境

實際上conda並沒有提供這樣的功能,但是可以曲線救國,原理是先克隆一個原來的環境,命名成想要的名字,再把原來的環境刪掉即可
參考自:conda 創建/刪除/重命名 環境
接下來演示把一個原來叫做py2的環境重新命名成python2:

conda create -n python2 --clone py2
conda remove -n py2 --all

騷操作:allias簡化啟動(非必須步驟)

 

 
image.png

linux提供了一個給大家偷懶的命令叫alias,只要在你的 .bashrc里設置一下就好了,我添加了一條叫做 condaup的命令,這樣就可以免去每次敲 . ~/miniconda/bin/dactivate的麻煩,一步搞定~技術宅改變世界!
 
image.png

 


報錯信息集錦

2020-08-06 update: 我最近用conda總是發生一些奇怪的問題, 所以想把報錯的信息及解決方式給收集整理一下.

報錯1: 網絡錯誤

Collecting package metadata (current_repodata.json): failed CondaHTTPError: HTTP 000 CONNECTION FAILED for url <https://conda.anaconda.org/genomedk/linux-64/current_repodata.json> Elapsed: - An HTTP error occurred when trying to retrieve this URL. HTTP errors are often intermittent, and a simple retry will get you on your way. u'https://conda.anaconda.org/genomedk/linux-64' 

一般這種問題就只要重新運行一下上一條命令就可以了. 有的時候網絡不穩定而已.

報錯2: 其他的錯誤等我找到解決方法再更新上來~



作者:賣萌哥
鏈接:https://www.jianshu.com/p/edaa744ea47d
來源:簡書
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM