• 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 我会在用到它时进行介绍。

  • 相关阅读:
    docker 可视化面板工具 protainer
    Docker 镜像及容器命令
    linux 系统上通过docker容器技术部署Nginx,whereis nginx
    Linux CentOS7 系统下安装及卸载Docker 及 配置阿里云镜像加速 及 Docker C/S架构
    Docker数据卷 Volume 挂载,容器路径与linux主机路径的一致性映射,mysql 实战
    什么是 JWT JSON WEB TOKEN ,理论部分
    2022 年最受瞩目的新特性 CSS @layer 到底是个啥?
    一道有意思的 CSS 面试题,FizzBu​​zz ~
    巧用 backgroundclip 实现超强的文字动效
    节点基于资源压力要驱逐pod时,pod的状态是什么?
  • 原文地址:https://www.cnblogs.com/xiaojikuaipao/p/7187989.html
Copyright © 2020-2023  润新知