Centos 7
modules
官網(wǎng)
document
tcl語(yǔ)言快速入門(mén)
tcl語(yǔ)言快速入門(mén)2
使用modules切換不同的環(huán)境藤抡,但配置這個(gè)你要去學(xué)一門(mén)語(yǔ)言tcl!不過(guò)不用害怕抹估,tcl十分簡(jiǎn)單缠黍,只要學(xué)過(guò)其他語(yǔ)言,1~2個(gè)小時(shí)完全搞定药蜻。其實(shí)也不用學(xué)那么多瓷式,只要看基本的tcl變量賦值和modulfile的說(shuō)明文檔也是可以!
安裝
#centos
sudo yum install -y environment-modules
#ubuntu
sudo apt-get install environment-modules
配置 這里可以交給管理員
創(chuàng)建module命令(實(shí)際執(zhí)行modulecmd應(yīng)用)
sudo vim /etc/profile
或者 vim ~/.bashrc
module ()
{
eval `/usr/bin/modulecmd bash $*`
}
# 告訴系統(tǒng)语泽,多了一個(gè)存放modulefiles的路徑
export MODULEPATH=$MODULEPATH:/public0/software/modulefiles
編寫(xiě)modulefiles
用tophat試一試贸典,下載tophat的二進(jìn)制文件,解壓直接可以用的踱卵。
建立一個(gè)tophat modulfile 存放目錄
mkdir -p tophat
cd tophat
編輯 tophat 版本信息
vim 2.1.1
#%Module1.0
proc ModulesHelp { } {
global dotversion
puts stderr "\ttophat 2.1.1"
}
module-whatis "tophat 2.1.1"
set version 2.1.1
conflict tophat
prepend-path PATH /public0/software/exe/tophat-2.1.1.Linux_x86_64
vim 2.1.0
#%Module1.0
proc ModulesHelp { } {
global dotversion
puts stderr "\ttophat 2.1.0"
}
module-whatis "tophat 2.1.0"
set version 2.1.0
conflict tophat
prepend-path PATH /public0/software/exe/tophat-2.1.0.Linux_x86_64
參數(shù)說(shuō)明:
#%Module1.0 #必須要
proc ModulesHelp { } { #這里有幾個(gè)空格是必須
global dotversion
puts stderr "\ttophat 2.1.0" #puts 就是print的意思
}
module-whatis "tophat 2.1.0" #
set version 2.1.0 #set是賦值廊驼,將 2.1.0 賦值給變量 version
conflict tophat #沖突
prepend-path PATH /public0/software/exe/tophat-2.1.0.Linux_x86_64
# prepend-path 顧名思義加入到PATH 前面据过,整句話就是把/public0/software/exe/tophat-2.1.0.Linux_x86_64 添加給環(huán)境變量PATH,并放在前面妒挎。
#實(shí)際使用時(shí)可能要添加很多绳锅,比如 LD_LIBRARY_PATH
復(fù)制到modulefiles 目錄
cd ..
sudo cp -r tophat/ /etc/modulefiles/
#或者
cp -r tophat/ /public0/software/modulefiles/
#設(shè)置目錄權(quán)限為777,方便共同維護(hù)酝掩,這樣其他用戶可以在tophat這個(gè)文件夾加入他的文件
chmod 777 /public0/software/modulefiles/tophat/
大功告成鳞芙!試一試吧!
# 查看有哪些版本
module avail
module load tophat/2.1.1
tophat --version
#結(jié)果:TopHat v2.1.1
module unload tophat/2.1.1
module load tophat/2.1.0
tophat --version
# 結(jié)果是:TopHat v2.1.0
不用再擔(dān)心版本沖突了期虾。
小結(jié):可以在/etc/profile添加系統(tǒng)默認(rèn)版本到PATH原朝,登錄就可以用!想切換就用module彻消!
我想登錄就用某一版本竿拆,而不是系統(tǒng)默認(rèn)版本怎么辦?
vim ~/.bashrc
#for bash shell
vim ~/.zshrc
#for zsh shell
module load tophat/2.1.1
這樣宾尚,你登錄的時(shí)候的tophat版本就是 2.1.1丙笋,而不是系統(tǒng)的2.1.0
conda
待研究....
安裝minicoda就好,minicoda相對(duì)anaconda就是沒(méi)有安裝其他任何包煌贴,這樣挺好的御板,以免后面又有包沖突,選擇python2.7的miniconda,目前很多基礎(chǔ)包還是python2.7牛郑。假如你使用python3怠肋,不用擔(dān)心,python2.7或者python3的conda都是有兩個(gè)版本的python淹朋,唯一區(qū)別是一些默認(rèn)參數(shù)的使用笙各,詳見(jiàn)官網(wǎng)。
安裝
wget https://repo.continuum.io/miniconda/Miniconda2-latest-Linux-x86_64.sh
bash Miniconda2-latest-Linux-x86_64.sh #一路默認(rèn)就行础芍,裝在你的home目錄里面
使用
link
bioconda
待研究....
conda config --add channels conda-forge
conda config --add channels defaults
conda config --add channels r
conda config --add channels bioconda
virtualenv
參考
配置服務(wù)器運(yùn)行環(huán)境
使用Environment Module設(shè)置運(yùn)行環(huán)境
心得
管理實(shí)驗(yàn)室的服務(wù)器有一年多杈抢,服務(wù)器配置是個(gè)麻煩的事情,還是蠻有挑戰(zhàn)的仑性。實(shí)驗(yàn)室常用的人才有6~7個(gè)人惶楼,加一些本科生用戶在十多個(gè),三臺(tái)服務(wù)器诊杆。沒(méi)有做集群歼捐,想機(jī)子多了再做集群,由于歷史的原因晨汹,先前的兩臺(tái)機(jī)用Ubuntu的系統(tǒng)豹储,而我最求系統(tǒng)穩(wěn)定,在最新的機(jī)子上裝的Centos7宰缤,有些硬件廠商可能沒(méi)有支持到Ubuntu的新版本呢颂翼,對(duì)于我又要做科研又要管理這些晃洒,精力實(shí)在是十分有限的,所以Centos 7是我的選擇朦乏。還有使用的過(guò)程也發(fā)現(xiàn)很多軟件球及,不僅僅是舊軟件,在Centos 7是裝起來(lái)還是輕松太多呻疹,Ubuntu 經(jīng)常出現(xiàn)包依賴問(wèn)題吃引,耗費(fèi)我很多時(shí)間,把我搞得精疲力竭刽锤,都沒(méi)時(shí)間做重要的事镊尺。愛(ài)折騰的人可以考慮Ubuntu,說(shuō)有很多新的features并思!
最大的問(wèn)題是軟件包版本問(wèn)題庐氮,一開(kāi)始我都是統(tǒng)一安裝在系統(tǒng)環(huán)境里面,這樣只要裝一次宋彼,所有用戶都可以使用弄砍,出于這種考慮是因?yàn)楹芏嘤脩羰切率郑瑒偦ㄙM(fèi)大量時(shí)間看了生物信息學(xué)的文章输涕,想實(shí)現(xiàn)音婶,安裝軟件是個(gè)很大的門(mén)檻,統(tǒng)一安裝軟件會(huì)方便他們莱坎。以為很好衣式,后面人多了問(wèn)題就大了,不同的同學(xué)有不同的需求檐什,就說(shuō)samtools 有0.19以前的,1.3以后的碴卧,而且命令不兼容,升級(jí)后有些用戶的pipeline就跑不動(dòng)了乃正,或者跑到一半沒(méi)結(jié)果螟深,不知道什么問(wèn)題,花很多時(shí)間去找烫葬!最后是這個(gè)問(wèn)題,實(shí)在是很痛苦凡蜻!
實(shí)驗(yàn)室也有天河二號(hào)的賬號(hào)搭综,天河二號(hào)對(duì)軟件版本的管理使用module,所以借鑒他們我也在自己的服務(wù)器上裝上這個(gè)開(kāi)源的管理軟件划栓!