一:RepeatMasker安装
在基因组注释中第一步就是重复序列的屏蔽,目前常用的从头注释pipeline就是RepeatModeler + RepeatMasker。
1.TRF
trf下载地址:[https://tandem.bu.edu/trf/trf409.linux64.download.html]
mv trf409.linux64 trf
chmod a+x trf。
2.RMblast
推荐使用2.9.0版本
使用conda安装
conda install RMblast=2.9.0
3.RepeatMasker
wget -c http://www.repeatmasker.org/RepeatMasker-4.1.0.tar.gz
tar xzvf RepeatMasker-4.1.0.tar.gz
chmod 755 *
./configure
“./configure”执行后,根据提示信息进行
1.perl环境,系统会默认自动检测
2.TRF,默认自动检测,不过我没有使用conda安装也没有加入环境变量需要自己输入
3.序列搜索引擎,在这里使用的是RMblast,默认检测
最后配置环境变量
vi ~/.bashrc
输入 export PATH="/datadisk02/soft/RepeatMaker:$PATH"
source ~/.bashrc
二:RepeatModeler安装
1.RepeatMasker、TRF、RMblast(已安装,不再赘述)
2. RECON
wget -c http://eddylab.org/software/recon/RECON1.05.tar.gz
也可以使用conda安装
3.RepeatScout
wget -c http://www.repeatmasker.org/RepeatScout-1.0.6.tar.gz
4.可选软件,运行LTR结构搜索必须软件,也可以不安装
LtrHarvest
LtrHarvest程序是GenomeTools套件的一部分。安装genometools即可,但安装时老报错,还好有万能的conda
conda install genometools-genometools
Ltr_retriever
https://github.com/oushujun/LTR_retriever/archive/master.zip
unzip LTR_retriever-master
添加至环境变量
MAFFT
wget http://mafft.cbrc.jp/alignment/software/mafft-7.158-without-extensions-src.tgz
perl -p -i -e 's#PREFIX =.*#PREFIX = /opt/biosoft/mafft#' Makefile
perl -p -i -e 's#BINDIR =.*#BINDIR = /opt/biosoft/mafft/bin/#' Makefile
make
make install
添加环境变量
CD-HIT
wget https://github.com/weizhongli/cdhit/archive/master.zip
unzip cdhit-master.zip && cd cdhit-master/
sudo make
添加至环境变量
Ninja
wget https://github.com/TravisWheelerLab/NINJA/archive/master.zip
解压后安装
Ninja安装非常让人头疼
sudo make
g++-7 命令未找到
查看Makefile后发现该问题
该软件需要c++11(4.8.1)以上的编译器,首先查看自己的gcc以及g++版本,4.8.1版本以上
sudo gcc -v
sudo g++ -v
g++-7这个命令是没有的,我们需要在Makefile里找到g++-7并把它改为g++,然后make
安装结束后打开NINJA文件夹
看到有Ninja出现
./Ninja
缺失 libstdc++.so.6: version’GLIBCXX_3.4.20’
又tm报错,都快要崩溃了,去网上搜解决方案呗,后来发现是 libstdc++.so.6的版本过低造成的,自己服务器上的libstdc++.so.6是一个软链接,它链接到了实际的动态库文件:libstdc++.so.6.0.19;由于该问题已解决,我的软连接改为了libstdc++.so.6.0.24
sudo cp /usr/local/lib64/libstdc++.so.6.0.24 /usr/lib64
cd /usr/lib64
sudo rm libstdc++.so.6
ln libstdc++.so.6.0.20 libstdc++.so.6
这时候回到NINJA下运行成功,添加到环境变量
5.RepeatModeler安装
如果前几步都添加了环境变量,软件会自动检测,只需要敲回车即可
cd RepeatModeler
perl ./configure
终于成功,开心
三:重复序列的屏蔽
无library直接使用RepeatMasker中的RepBase数据库来计算重复序列,若RepBase数据库对目标物种的覆盖不好,则很可能只找到较少的重复序列。此时,使用RepeatModeler构建library就很有必要。
无library的构建方法在RepeatMasker官网上有个流程,http://www.repeatmasker.org/RepeatModeler/,根据example run的来就行
1.构建数据库
BuildDatabase -name hud Lichenomphalia_hudsoniana_LH.genome.fasta
2.构建library
nohup RepeatModeler -pa 10 -database hud -LTRStruct >& run.out &
运行成功完成后,将生成两个文件,还有一个文件夹
hud-families.fa
hud-families.stk
让我们看一下这两个文件都是啥
less hud-families.fa
这是一个fa文件,在id上会注明这个序列是什么结构,比如这条序列就是LTR,再看一下所有的ID
grep ">" hud-families.fa
可以发现在repeatmodeler运行完就已经把基因组的所有序列进行了标识
less hud-families.stk
这个文件看的我有点懵,没见过的格式啊,后来去官网查了一下这是Dfam兼容的Stockholm格式,可以通过将数据提交到help@dfam.org上传到Dfam数据库。
不过咱们也别纠结这个问题,下一步用到的只有xxx-families.fa
3.运行RepeatMasker
nohup RepeatMasker -e rmblast -lib hud-families.fa -pa 16 Lichenomphalia_hudsoniana_LH.genome.fasta &
运行速度很快,结果生成三个文件
Lichenomphalia_hudsoniana_LH.genome.fasta.masked
Lichenomphalia_hudsoniana_LH.genome.fasta.out
Lichenomphalia_hudsoniana_LH.genome.fasta.tbl
Lichenomphalia_hudsoniana_LH.genome.fasta.out:这个文件主要记录了基因组重复的位置信息以及类型
Lichenomphalia_hudsoniana_LH.genome.fasta.tbl,对各个重复进行了归类并汇总基因组重复信息,
Lichenomphalia_hudsoniana_LH.genome.fasta.masked:这个就我们要的最终文件,把重复序列替换为N的基因组序列文件,利用这文件就可以进行下一步注释了
参考链接
https://www.jianshu.com/p/50ce4bcd1972
各个软件的链接都在http://www.repeatmasker.org/,我就不整理在这了