运维百科

Centos7下数据分析环境搭建

软件列表:Samtools + R + Cutadapt + FastQC + Bowtie + Bowtie2 + HMMER + Tophat2 + HISAT2 + Cufflinks + Trinity + ABySS + SOAPdenovo + htseq-count + blast


Samtools安装

samtools是一个用于操作sambam文件的工具合集。包含有许多命令。介绍一种更加简洁安装samools文件的方法:

1、从github下载所需版本samtools软件包

https://sourceforge.net/projects/samtools/files/samtools/1.6/

也可从github获取最新版本的包

# git clone git://github.com/samtools/samtools.git 

 

2、解压并安装,此处以目前最新版samtools-1.6为例:

# tar -jxf samtools-1.6.tar.bz2

# cd samtools-1.6

# autoconf

# make clean

# make

# make prefix=/opt/samtools install

 

3、加入环境变量

# echo 'export PATH=$PATH:/opt/samtools/bin' >> /etc/profile

# source /etc/profile  //要让刚才的修改马上生效,需要执行以下代码

 

 

错误整理:

1、安装samtoolsmake错误:

Makefile:103: config.mk: 没有那个文件或目录

config.mk:33: ../htslib/htslib.mk: 没有那个文件或目录

config.mk:34: ../htslib/htslib_static.mk: 没有那个文件或目录

make: *** 没有规则可以创建目标“../htslib/htslib_static.mk”。 停止。

 

解决办法:

# yum install bzip2-devel -y

# yum install ncurses-libs -y

# yum install ncurses-devel -y

 

然后在samtool同级目录下安装tslib

下载htslib包:http://www.htslib.org/download/

或者git clone https://github.com/samtools/htslib.git,解压缩并安装

# autoconf

#./configure

# make 

# make install

 

安装tslib报错:

configure: error: zlib development files not found

 

解决办法:

# yum install zlib-devel

 

 

安装htslib报错:

configure: error: liblzma development files not found

 

解决办法:

# yum -y install xz-devel.x86_64

 

安装htslib报错:

config.status: error: cannot find input file: 'config.h.in'

 

解决办法:

# autoheader  //生成config.h.in

 

 

R-3.3.1安装

R是用于统计分析、绘图的语言和操作环境。R是属于GNU系统的一个自由、免费、源代码开放的软件,它是一个用于统计计算和统计制图的优秀工具。

1、安装依赖包

# yum install readline-devel -y

# yum install libXt-devel -y

 

2、下载安装,下载地址:https://cran.r-project.org/src/base/R-3/

# tar zxvf R-3.3.1.tar.gz

# cd R-3.3.1

# ./configure --prefix=/opt/R-3.3.1   --enable-R-shlib

 

安装R-3.3.1报错:

configure: error: pcre >= 8.10 library and headers are required

 

解决办法:

# yum install pcre*

 

安装R-3.3.1报错:

configure: error: libcurl >= 7.28.0 library and headers are required with support for https

 

解决办法:

# yum install openssl*       ##需要支持ssl服务

# tar zxvf curl-7.57.0.tar.gz

# cd /root/curl-7.57.0

#./configure  --prefix=/opt/curl-7.57.0

# make && make install

 

# export PATH=$PATH:/opt/curl-7.57.0/bin   ##在这一行加上":/opt/curl-7.57.0/bin"

# source /etc/profile        ##让环境变量立马生效

 

重新编译安装R

# cd /root/R-3.3.1

#./configure --prefix=/opt/R-3.3.1   --enable-R-shlib CPPFLAGS="-I/opt/curl-7.57.0/include/"

# make

# make install

 

vim /etc/profile      ##添加R源环境变量

export PATH=$PATH:/opt/samtools/bin:/opt/curl-7.57.0/bin/:/opt/R-3.3.1/bin/

source /etc/profile   ##让环境变量立马生效

 

 

cutadapt安装

Cutadapt是一款在一定容错率的情况下对高通量测序的数据进行识别/剪切/去除adapters,primers ,poly_A等序列(即你不想要的序列)的软件。

 

方法1:使用pip命令安装:pip install cutadapt   //本文使用方法;

方法2:官网下载后放到Linux目录下,解压后选择python2 setup.py install -user

 

错误:

-bash: pip: 未找到命令

 

解决办法:

# wget https://pypi.python.org/packages/source/p/pip/pip-1.5.4.tar.gz

# tar -xzvf pip-1.5.4.tar.gz

# cd pip-1.5.4

# python setup.py install

 

安装pip错误:

Traceback (most recent call last): 

  File "setup.py", line 6, in <module> 

    from setuptools import setup, find_packages 

ImportError: No module named setuptools 

 

解决办法:

先安装 setuptools,下载地址:https://pypi.python.org/pypi/setuptools

下载 setuptools-17.0.tar.gz

# cd setuptools-17.0

# python2.7 setup.py install

安装setuptools成功后,继续安装pip,再安装cutadapt

 

cutadapt安装报错:

_align.c:12:20

 

解决办法:

# yum install python-devel

 

再安装cutadapt

使用pip命令安装:

# pip install cutadapt

 

 

FastQC安装

FastQC是一款基于Java的软件,一般都是在linux环境下使用命令行运行,它可以快速多线程地对测序数据进行质量评估(Quality Control

当二代测序的原始数据拿到手之后,第一步要做的就是看一看原始reads的质量。常用的工具就是FastQC

FastQC的官网:http://www.bioinformatics.babraham.ac.uk/projects/fastqc/

FastQC的下载地址:http://www.bioinformatics.babraham.ac.uk/projects/download.html#fastqc

 

得到压缩包:fastqc_v0.11.5.zip 

解压:unzip fastqc_v0.11.5.zip

 

# mv FastQC/ /opt/

# cd /opt/FastQC

# chmod 754 fastqc    //增加可执行权限

# ln -s /opt/FastQC/fastqc /usr/local/bin/fastqc

# fastqc --help

 

执行报错:

[root@localhost FastQC]# fastqc example1.*

Can't exec "java": 没有那个文件或目录 at /usr/local/bin/fastqc line 183

 

解决办法:

yum install java-*

 

 

BowtieBowtie 2的安装

Bowtie是一个超级快速的,较为节省内存的短序列拼接至模板基因组的工具。它在拼接35碱基长度的序列时,可以达到每小时2.5亿次的拼接速度。Bowtie并不是一个简单的拼接工具,它不同于Blast等。它适合的工作是将小序列比对至大基因组上去。它最长能读取1024个碱基的片段。换言之,bowtie非常适合下一代测序技术。

1. 下载

BowtieBowtie 2都可以在这里下载:  http://sourceforge.net/projects/bowtie-bio/files/

这里以 Building from source 为例子, 从而需要下载其源代码,而非针对特定OS已经编译好了的binary release.  从而 32bit64bitWindows, Linux, Mac OS 都可以这样做。

 

我下载的是以下2个文件:

bowtie-1.0.0-src.zip

bowtie2-2.1.0-source.zip

 

2. 编译

# unzip bowtie2-2.2.4-source.zip

# mv bowtie2-2.2.4 /opt/

# cd /opt/bowtie2-2.2.4

# make

# chmod 777 bowtie2

# ./bowtie2

 

若没有问题,会显示出bowtie2的使用信息。

 

bowtie-1.0.0同上:

# unzip bowtie-1.1.1-src.zip

# mv bowtie-1.1.1 /opt/

# cd /opt/bowtie-1.1.1/

# make

# chmod 777 bowtie

# ./bowtie

若下载的是已经编译好了的二进制可执行文件,则可以跳过这一步。

 

添加环境变量:

# export BOWTIE_INDEXES=/opt/bowtie-1.1.1/indexes

# export PATH=$PATH   ##在这一行最后加上":/opt/bowtie2-2.2.4:/opt/bowtie-1.1.1"

# source /etc/profile   ##让环境变量立马生效

 

 

安装 HMMER

HMMER可以用来在数据库中搜索蛋白或DNA序列的同源物,并且做序列比对。HMMER可以仅仅用来在数据库中查询序列,但因为可以在做多重序列家族的比对而变得更加强大。HMMER给替换、插入、删除突变设置了一个位置特异性评分系统的查询文件。HMMER框架是一个叫做“隐形马尔可夫模型”的概率性模型。

 

# wget ftp://selab.janelia.org/pub/software/hmmer3/3.1b2/hmmer-3.1b2.tar.gz  //下载站点:http://hmmer.org/download.html,选择下架。

# tar zxf hmmer-3.1b2.tar.gz

# cd hmmer-3.1b2

#./configure --prefix=/opt/hmmer

# make -j 8

# make install

 

添加环境变量:

# export PATH=$PATH   ##在这一行最后加上":/opt/hmmer/bin "

# source /etc/profile   ##让环境变量立马生效

 

 

TopHat2 的安装

TopHat是基于Bowtie的将RNA-Seq数据mapping到参考基因组上,从而鉴定可变剪切(exon-exon splice junctions)。

 

下载最新预编译版本

# wget http://ccb.jhu.edu/software/tophat/downloads/tophat-2.1.0.Linux_x86_64.tar.gz

# tar -zxvf tophat-2.1.0.Linux_x86_64.tar.gz

# mv tophat-2.1.1.Linux_x86_64 /opt/

# /opt/tophat-2.1.1.Linux_x86_64/    //加入 PATH 即可

# tophat2  //测试

 

 

HISAT2安装

HISAT2TopHat2/Bowti2的继任者,使用改进的BWT算法,实现了更快的速度和更少的资源占用。

 

下载最新预编译版本

ftp://ftp.ccb.jhu.edu/pub/infphilo/hisat2/downloads/hisat2-2.1.0-Linux_x86_64.zip

 

# unzip hisat2-2.1.0-Linux_x86_64.zip

# mv hisat2-2.1.0 /opt/

 

添加环境变量:

# export PATH=$PATH:/opt/hisat2-2.1.0

# source /etc/profile   ##让环境变量立马生效

 

 

Cufflinks安装

Cufflinks下主要包含cufflinks,cuffmerge,cuffcomparecuffdiff等几支主要的程序。主要用于基因表达量的计算和差异表达基因的寻找。

 

下载最新预编译版本

http://cole-trapnell-lab.github.io/cufflinks/assets/downloads/cufflinks-2.2.1.Linux_x86_64.tar.gz

 

# tar zxvf cufflinks-2.2.1.Linux_x86_64.tar.gz

# mv cufflinks-2.2.1.Linux_x86_64 /opt

 

添加环境变量:

# export PATH=$PATH:/opt/cufflinks-2.2.1.Linux_x86_64

# source /etc/profile   ##让环境变量立马生效

 

你可以敲入:cufflinks -v 

cufflinks v2.2.1(后面是cufflinks的使用参数)

 

 

trinity安装

Trinity:是由Broad Institute 开发的转录组de novo组装软件,由三个独立的软件模块组成:Inchworm ChrysalisButterfly。三个软件依次来处理大规模的RNA-seqreads数据。

 

下载地址:http://trinityrnaseq.github.io/  

# wget https://codeload.github.com/trinityrnaseq/trinityrnaseq/tar.gz/v2.1.1/trinityrnaseq-2.1.1.tar.gz

# tar zxf trinityrnaseq-2.1.1.tar.gz

# mv trinityrnaseq-2.1.1 /opt/

# cd /opt/trinityrnaseq-2.1.1/

# make

# make plugins 安装下游分析依赖的plugin components

 

备注:仅需要在安装目录下进行make即可,该命令编译了由C++编写的InchwormChrysalis,而使用Java编写的Butterfly则不需要编译,可以直接使用。

依赖:gcc 4.3(或以上版本)、Java-1.7(或以上版本)、bowtie-1

 

添加环境变量:

# export PATH=$PATH:/opt/trinityrnaseq-2.1.1

# source /etc/profile   ##让环境变量立马生效

 

 

abyss安装

ABySS是一个能并行的,双端测序短序列组装软件(单端也行),但线程版本可用于之多100M基因组的拼接,并行版本采用MPI并行算法,能拼接比100M更大的基因组。组装转录组数据可用Trans-ABySS. 据我简单调研,ABySS 在病毒基因组拼接中使用广泛[12],所以我在这里安装ABySS的目的就是用来组装一个病毒基因组。

 

# wget http://www.bcgsc.ca/platform/bioinfo/software/abyss/releases/1.3.7/abyss-1.3.7.tar.gz

# tar zxf abyss-1.9.0.tar.gz

# cd abyss-1.9.0

# ./configure --prefix=/opt/abyss-1.9.0

# make -j 4

# make install

 

安装abyss报错:

configure: error: ABySS requires the Boost C++ libraries

 

解决办法:

安装boost,下载地址:http://www.boost.org/users/download/

# wget http://downloads.sourceforge.net/project/boost/boost/1.56.0/boost_1_56_0.tar.bz2

# tar jxf boost_1_56_0.tar.bz2  (解压好得到boost_1_56_1文件夹,此时就可以了)

# mv boost_1_56_0 /opt/

 

安装abyss报错:

configure: WARNING: ABySS should be compiled with Google sparsehash to

         reduce memory usage. It may be downloaded here:

         http://code.google.com/p/google-sparsehash

 

解决办法:

安装Googlesparsehash

# wget https://github.com/sparsehash/sparsehash/archive/sparsehash-2.0.3.tar.gz

# tar -zxv fsparsehash-sparsehash-2.0.3.tar.gz

# cd sparsehash-sparsehash-2.0.3/

#./configure --prefix=/opt/sparsehash-2.0.3

# make

# make install

 

Open MPI 安装

# wget http://www.open-mpi.org/software/ompi/v1.10/downloads/openmpi-1.10.1.tar.bz2

# tar jxf openmpi-1.10.1.tar.bz2

# cd openmpi-1.10.1

# ./configure --prefix=/opt/openmpi-1.10.1

# make all install

 

安装报错:ABySS安装make这一步时报错:/usr/bin/ld: cannot find -lsqlite3 ,经过研究发现需要安装sqlite

解决办法:sqlite安装

# wget http://www.sqlite.org/2015/sqlite-autoconf-3090200.tar.gz

# tar -xvf sqlite-autoconf-3090200.tar

# cd sqlite-autoconf-3090200

#./configure --prefix=/opt/sqlite

# make

# make install

至此所有依赖包安装完成,全部安装在目录:/opt/

 

更新abyss的编译命令:

#./configure --prefix=/opt/abyss-1.3.7/ --with-boost=/opt/boost_1_56_0/ CPPFLAGS=-I/opt/sparsehash-2.0.3/include/ --with-sqlite=/opt/sqlite/ --with-mpi=/opt/openmpi-1.10.1/

# make

# make install

 

添加环境变量:

# export PATH=$PATH:/opt/abyss-1.3.7/bin/

# source /etc/profile   ##让环境变量立马生效

 

 

SOAPdenovo安装

SOAPdenovo是一个新颖的适用于组装短reads的方法,能组装出类似人类基因组大小的de novo草图。

 

下载地址:http://soap.genomics.org.cn/soapdenovo.html

# wget https://nchc.dl.sourceforge.net/project/soapdenovo2/SOAPdenovo2/src/r240/SOAPdenovo2-src-r240.tgz

# mv SOAPdenovo2-src-r240 /opt/

# cd /opt/SOAPdenovo2-src-r240/

# make

 

make错误:

make[1]: 进入目录“/opt/SOAPdenovo2-src-r240/sparsePregraph

pregraph_sparse_63mer.v1.0.3 cleaning done.

multi_threads.cpp: 在函数‘void* threadRoutine(void*)’中:

multi_threads.cpp:93:14: 错误:‘usleep’在此作用域中尚未声明

   usleep ( 1 );

              ^

multi_threads.cpp: 在函数‘void sendWorkSignal(unsigned char, unsigned char*)’中:

multi_threads.cpp:115:15: 错误:‘usleep’在此作用域中尚未声明

   usleep ( 10 );

               ^

Error in command: g++  -c -O4 -fomit-frame-pointer  -D_63MER_ -m64  -I./inc multi_threads.cpp

build_preArc.cpp: 在函数‘void build_preArc_threaded(preArc_array*, vertex_hash2*, int, int, std::vector<std::basic_string<char> >*, int)’中:

build_preArc.cpp:1071:39: 错误:‘usleep’在此作用域中尚未声明

   while ( io_ready == 0 ) {usleep ( 1 );}

                                       ^

Error in command: g++  -c -O4 -fomit-frame-pointer  -D_63MER_ -m64  -I./inc build_preArc.cpp

pregraph_sparse.cpp: 在函数‘int call_pregraph_sparse(int, char**)’中:

pregraph_sparse.cpp:171:42: 错误:‘usleep’在此作用域中尚未声明

      while ( io_ready == 0 ) {usleep ( 1 );}

                                          ^

pregraph_sparse.cpp:284:42: 错误:‘usleep’在此作用域中尚未声明

      while ( io_ready == 0 ) {usleep ( 1 );}

                                          ^

pregraph_sparse.cpp: 在函数‘void initenv(int, char**)’中:

pregraph_sparse.cpp:504:2: 错误:‘optind’在此作用域中尚未声明

  optind = 1;

  ^

pregraph_sparse.cpp:507:64: 错误:‘getopt’在此作用域中尚未声明

  while ( ( copt = getopt ( argc, argv, "s:o:K:g:z:d:e:p:m:r:R" ) ) != EOF )

                                                                ^

Error in command: g++  -c -O4 -fomit-frame-pointer  -D_63MER_ -m64  -I./inc pregraph_sparse.cpp

make[1]: 离开目录“/opt/SOAPdenovo2-src-r240/sparsePregraph    

make[1]: 进入目录“/opt/SOAPdenovo2-src-r240/standardPregraph

SOAPdenovo-63mer cleaning done.

make[1]: 离开目录“/opt/SOAPdenovo2-src-r240/standardPregraph

standardPregraph/main.o:在函数‘main’中:

main.c:(.text.startup+0xf9):对‘call_pregraph_sparse’未定义的引用

collect2: 错误:ld 返回 1

make: *** [SOAPdenovo-63mer] 错误 1

 

解决办法:

sparsePregraph目录下multi_threads.cppbuild_preArc.cpppregraph_sparse.cpp 文件头文件中加入:

#include "unistd.h"

修改完后 重新make && make install

 

 

HTSeq 的安装

htseq-count是一款用于reads计数的轻便软件,作者介绍说可以用于多种mapping软件的输出结果,而我则用于tophat2的输出文件做计数。不过貌似所有能转换为sam格式文件的输出都可以用htseq-count计数。

 

安装依赖的组件

# yum install build-essential python2.7-dev python-numpy python-matplotlib

# wget --no-check-certificate https://pypi.python.org/packages/source/H/HTSeq/HTSeq-0.6.1p1.tar.gz

# tar -zxvf HTSeq-0.6.1p1.tar.gz

# cd HTSeq-0.6.1p1/

# python setup.py install --user

 

测试

# python

>>> import HTSeq

>>>

能够 完成在python 里面导入 HTSeq 这个包,说明安装成功。

 

 

blast安装

BLAST (Basic Local Alignment Search Tool)是一套在蛋白质数据库或DNA数据库中进行相似性比较的分析工具。BLAST程序能迅速与公开数据库进行相似性序列比较。BLAST结果中的得分是对一种对相似性的统计说明。

 

下载地址:ftp://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/

 

# tar zxvpf ncbi-blast-2.2.29+-x64-linux.tar.gz

# mv ncbi-blast-2.2.29+ /opt/

 

添加环境变量:

# export PATH=$PATH:/opt/ncbi-blast-2.2.29+/bin

# source /etc/profile   ##让环境变量立马生效


至此,搭建完成。

本站部分资源收集于网络,纯个人收藏,无商业用途,如有侵权请及时告知!

1
分享到:

评论 0

取消
  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址