Fastq 常用软件
文章转载于
由于生物信息的大部分工作都是在没有 root 权限的集群上进行的,本期我主要介绍一下非 root 用户怎么安装常用的软件。工欲善其事,必先利其器!
准备工作
1 首先我们建一个文件夹,用来存储我们自己编译的程序 ($HOME/software/bin) 和预编译的程序 ($HOME/software)。
mkdir -p $HOME/software/bin
2 用 vim 或 nano 等编辑器修改 ~/.bash_profile (如果没有这个文件,可以自己创建一个,注意 ~ 符号,这个文件是在自己的 HOME 目录下),在其中加入下一行命令并退出。
export PATH=$HOME/software/bin:$PATH
-
$PATH 为系统默认的查找可执行文件的目录,可以用 echo $PATH 来查看它的内容。我们安装软件以后,需要告诉系统在哪里寻找并运行我们自己安装的软件,因此我们需要把软件的安装目录写入到环境变量 $PATH 中。
-
在写入新的路径到 PATH 时,可以有两种形式,export PATH=$HOME/software/bin:$PATH 和 export PATH=$PATH:$HOME/software/bin。系统查找可执行文件的规则是:首先在冒号之前的路径查找用户想要执行的命令,找不到再从冒号以后的路径查找。因此,如果集群上已经装了某个软件,如果你想安装并使用不同的版本,则需要把自己刚刚安装软件的路径写在冒号前面,把 $PATH 写在冒号后面。比如,系统的 java 版本比较老旧,你想安装最新版,那一定要把新安装的 java 的路径写在前面。
-
我将用刚刚建立的 $HOME/software/bin 文件夹,保存所有自己编译的软件和预编译的软链接。这样可以做到只添加一个路径到 ~/.bash_profile 中,就可以执行安装的软件。应该尽量保持 ~/.bash_profile 文件的简洁 (尽量减少修改它次数,在修改前一定要备份,防止误操作引起用户不能登陆)。
3 执行 source ~/.bash_profile 使刚刚设置的环境变量生效。
一 质量控制软件 FastQC 的安装
cd $HOME/software
wget https://www.bioinformatics.babraham.ac.uk/projects/fastqc/fastqc_v0.11.5.zip
unzip fastqc_v0.11.5.zip
rm fastqc_v0.11.5.zip
cd FastQC/
chmod 755 fastqc
ln -s $HOME/software/FastQC/fastqc $HOME/software/bin/fastqc
-
FastQC 为预编译软件,即开发者已经编译好,可以直接使用。我用软链接在 $HOME/software/bin/ 目录下建立了一个已编译的 fastqc 的软链接,由于我们已经提前把 $HOME/software/bin/ 写入到环境变量 PATH 中,现在我们在任何路径下都可以直接运行 fastqc 了。
-
FastQC 可以用来得到多个测序数据的质量参数,让我们对测序得到的数据质量有个初步的认识,从而判断后续的质控如何进行,我会在接下来的博文中详细介绍这部分内容。
二 质量控制软件 Trimmomatic 的安装
cd $HOME/software
wget http://www.usadellab.org/cms/uploads/supplementary/Trimmomatic/Trimmomatic-0.36.zip
unzip Trimmomatic-0.36.zip
rm Trimmomatic-0.36.zip
cd Trimmomatic-0.36; ls ;
Trimmomatic 是 java 写的软件,它的使用和 fastqc 不同,我们可以这样来调用它:
Trimmomatic=$HOME/software/Trimmomatic-0.36/trimmomatic-0.36.jar
ava -jar $Trimmomatic
输入上面的命令可以得到 Trimmomatic 的帮助文件。Trimmomatic 是一个强大的质控软件,可以去除 reads 中含有的测序接头,裁剪或者去掉低质量的 reads 等。在去测序接头方面的表现尤为突出,我会在以后的博文中详细介绍。
三 Mapping 软件 BWA 的安装
cd $HOME/software
wget https://sourceforge.net/projects/bio-bwa/files/bwa-0.7.15.tar.bz2
tar -jxvf bwa-0.7.15.tar.bz2
rm bwa-0.7.15.tar.bz2
cd bwa-0.7.15/
make
mv bwa $HOME/software/bin
cd ..
rm -rf bwa-0.7.15
在安装每个软件前可以先读一下目录内的 README,里面会有关于安装软件的说明。 bwa 的安装比较特殊,只需要一个 make 就可以完成。
四 SAMTools 的安装
cd $HOME/software
wget https://github.com/samtools/samtools/releases/download/1.4.1/samtools-1.4.1.tar.bz2
tar -jxvf samtools-1.4.1.tar.bz2
rm samtools-1.4.1.tar.bz2
cd samtools-1.4.1/
./configure --prefix=$HOME/software/
make
make install
cd ../; rm -rf samtools-1.4.1
-
上面的过程是非 root 用户安装软件的标准流程:其中 --prefix=$HOME/software 用来定义软件的安装位置,安装完成后,所有的应用程序自动的被安装到 $HOME/software/bin 的目录下。
-
如果是 root 用户,就只需要 ./configure; make; sudo make install。软件会被安装到默认目录中 ,比如 /usr/local/bin。
五 BCFtools 的安装
cd $HOME/software
wget https://github.com/samtools/bcftools/releases/download/1.4.1/bcftools-1.4.1.tar.bz2
tar -jxvf bcftools-1.4.1.tar.bz2
rm bcftools-1.4.1.tar.bz2
cd bcftools-1.4.1/
make
make prefix=$HOME/software/ install
cd ..
rm -rf bcftools-1.4.1
同样是要先读 README,发现需要看 INSTALL 文件,然后发现如果需要安装到指定目录是在 make install 步骤指定的,而且 prefix 前没有 --。
六 GATK 和 Picard Tools 的安装
GATK 是 java 写的软件,下载这个软件需要先注册用户,同意一些协议,网址为 https://software.broadinstitute.org/gatk/。下载后,上传到 $HOME/software 目录,运行:
tar -jxvf GenomeAnalysisTK-3.7-0.tar.bz2
rm GenomeAnalysisTK-3.7-0.tar.bz2
rm -rf resources
Picard 也是 java 写的软件,可以直接下载到我们的 software 目录下:
cd $HOME/software
wget https://github.com/broadinstitute/picard/releases/download/2.9.2/picard.jar
GATK 和 Picard 的运行,参考第三步的 Trimmomatic。
结语
本期的内容,涵盖了常用软件的安装方法,这是我自己多年积累的经验,希望对大家有所帮助。还有一个软件 (fastSTRUCTURE) 的安装比较特殊,涉及到没有 root 权限安装所依赖的 Python package 和 GNU Scientific Library 我会在用到它时进行介绍。