在基因组注释中第一步就是重复序列的屏蔽,目前常用的从头注释 pipeline 就是 RepeatModeler + RepeatMasker。
# 一: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 后发现该问题
该软件需要 c11 (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,对各个重复进行了归类并汇总基因组重复信息,
逆转录因子 :SINEs,短散在重复序列。 LINEs,长散在重复序列。LTR,长末端重复序列。
DNA 转座子
Lichenomphalia_hudsoniana_LH.genome.fasta.masked:这个就我们要的最终文件,把重复序列替换为 N 的基因组序列文件,利用这文件就可以进行下一步注释了
# 参考链接
https://blog.csdn.net/libaineu2004/article/details/77100132?utm_medium=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.nonecase&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.nonecase
http://www.repeatmasker.org/
https://www.jianshu.com/p/50ce4bcd1972
各个软件的链接都在 http://www.repeatmasker.org/,我就不整理在这了