[TOC]
# 版本: 1.14, 2022/3/25# 测试环境为Linux Ubuntu 20.04 / CentOS 7.7
# 数据库安装位置,默认~/db目录(无需管理权限),管理员可安装至/db,方便大家使用db=~/dbmkdir -p {db} && cd # 软件安装位置,也可能为miniconda3soft=~/miniconda3
EasyMetagenome依赖流程,包括很多脚本、常用小软件和数据库的合集,网址:https://github.com/YongxinLiu/EasyMicrobiome
# 三种下载数据库的方法:任选其一即可
# 方法1. 可使用wget或在网址 https://github.com/YongxinLiu/EasyMicrobiome 中Code Download ZIP下载压缩包,并解压
# 方法2. http备用链接下载wget -c http://210.75.224.110/db/EasyMicrobiome.zipunzip EasyMicrobiome.zip
# 方法3. git下载,需要安装git并配置好帐号git clone https://github.com/YongxinLiu/EasyMicrobiome# 可选旧版更新 cd EasyMicrobiome && git pull
# 添加linux命令可执行权限chmod +x EasyMicrobiome/linux/*
# 添加环境变量echo 'export PATH="$PATH:~/db/EasyMicrobiome/linux"' >> ~/.bashrc
# 下载最新版miniconda3,~49Mwget -c https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh# 安装,-b批量,-f无提示,-p目录,许可协议打yesbash Miniconda3-latest-Linux-x86_64.sh -b -f# 激活,然后关闭终端重开,提示符前出现(base)即成功~/miniconda3/condabin/conda init# 查看版本,conda 4.11.0, python 3.9.7conda -Vpython --version# 添加常用频道conda config --add channels conda-forge# 添加生物学软件频道,http://bioconda.github.io/ 查询软件conda config --add channels bioconda# conda默认配置文件为 ~/.condarc 查看配置文件位置conda config --show-sources
中文详细安装教程参考:Nature Method:Bioconda解决生物软件安装的烦恼
(可选)如果找不到conda,可手动临时添加conda至环境变量。可以添加至~/.bashrc文件中永久环境变量,需将$替换为你的安装目录,如
# export PATH="{soft}/bin:PATH"
查看虚拟环境列表
conda env list
创建虚拟环境示例,防污染环境变量示例(如果软件安装卡在Solving environment步骤,可尝试新建环境)
conda create -n meta# 加载环境conda activate meta# 退出环境conda deactivate
conda安装经常会卡在Collecting package metadata或Solving environment。我们推荐一种直接下载解压的安装方式,可以加速环境的部署。
下载安装包并解压安装:
# 指定环境名称,如 meta, humann2, kraken2, eggnog, rgi, metawrap1.3, drep, gtdbtk1.5, humann3, qiime2-2021.2soft=~/miniconda3n=metawrap1.3# 下载wget -c http://210.75.224.110/db/conda/{n}.tar.gz # 指定安装目录 mkdir -p /envs/{n} tar -xvzf .tar.gz -C {soft}/envs/# 方法1. 启动环境conda activate n # 初始化环境 conda unpack # 退出环境 conda deactivate # 方法2. 绝对目录激活环境 # source /envs/$/bin/activate
(可选)安装好的环境下打包导出,以宏基因组主环境meta为例
# 安装conda-pack实现打包conda install conda-pack -c conda-forge# conda 安装不成功可用pip安装# pip conda-pack
# conda环境包统一存放cd ~/db/conda/# 设置环境名,如meta, humann2, kraken2, eggnog, rgi, metawrap1.3, drep, gtdbtk1.5n=metaconda pack -n {n} -o .tar.gz# 导出软件安装列表conda activate {n} conda env export > .yml# 添加权限,方便下载和别人使用chmod 755 *
人类基因组,为Kneaddata作者自定义构建好的索引,可直接下载使用。下面是我的备份链接,官方安装方法见下方“标准化安装”段落
mkdir -p {db}/kneaddata/human_genome && cd /kneaddata/human_genomewget -c http://210.75.224.110/db/kneaddata/human_genome/Homo_sapiens_hg37_and_human_contamination_Bowtie2_v0.1.tar.gztar xvzf Homo_sapiens_hg37_and_human_contamination_Bowtie2_v0.1.tar.gz
自定义基因组构建索引,大多数基因组可在ensembl genome下载。此处以拟南芥为例,访问 http://plants.ensembl.org/index.html ,选择Arabidopsis thaliana —— Download DNA sequence (FASTA),选择toplevel右键复制链接,填入下面链接处
# 创建子目录mkdir -p {db}/kneaddata/ath && cd /kneaddata/ath# 下载wget -c http://ftp.ensemblgenomes.org/pub/plants/release-51/fasta/arabidopsis_thaliana/dna/Arabidopsis_thaliana.TAIR10.dna.toplevel.fa.gz# 解压gunzip Arabidopsis_thaliana.TAIR10.dna.toplevel.fa.gz# 简化文件名mv Arabidopsis_thaliana.TAIR10.dna.toplevel.fa tair10.fa# bowtiew建索引,输入文件,输出文件前缀,9线程2分time bowtie2-build -f tair10.fa tair10 --threads 9 --seed 1
mkdir -p {db}/humann2 && cd /humann2# 泛基因组下载、指定目录解压wget -c http://210.75.224.110/db/humann2/full_chocophlan_plus_viral.v0.1.1.tar.gzmkdir -p chocophlantar xvzf full_chocophlan_plus_viral.v0.1.1.tar.gz -C chocophlan/# 功能注释wget -c http://210.75.224.110/db/humann2/full_mapping_1_1.tar.gzmkdir -p utility_mappingtar xvzf full_mapping_1_1.tar.gz -C utility_mapping/# 功能基因蛋白序列wget -c http://210.75.224.110/db/humann2/uniref90_annotated_1_1.tar.gzmkdir -p unireftar xvzf uniref90_annotated_1_1.tar.gz -C uniref/# 物种标记基因数据库wget -c http://210.75.224.110/db/humann2/metaphlan2.tar.gzmkdir -p metaphlan2tar xvzf metaphlan2.tar.gz -C metaphlan2/
humann2_config --update database_folders utility_mapping {db}/humann2/utility_mapping humann2_config --update database_folders nucleotide /humann2/chocophlanhumann2_config --update database_folders protein $/humann2/uniref# metaphlan2数据库默认位于~/miniconda3/envs/biobakery/bin/ 程序所在目录的db_v20 (v0.11)和databases(2.8.1)下humann2_config --print# 例如,链接下载的metaphlan2:ln -s pwd/metaphlan2 ~/miniconda3/envs/biobakery/bin/databases
pwd
以上移植方法无法使用时,或没有的软件,可参考以下代码。软件更新频率,有问题可先查看软件的官方最新安装教程是否更新,以最新版为准
# =为指定版本,-c指定安装源,均可加速安装# -y为同意安装conda install fastqc=0.11.9 -c bioconda -yfastqc -v
# 注1.7为Python2环境,1.8/9新版本需要Python3的环境conda install multiqc=1.9 -c bioconda -ymultiqc --version
conda install kneaddata=0.7.4 -c bioconda -ykneaddata --versiontrimmomatic -version # 0.39bowtie2 --version # 2.4.2
# 查看可用数据库kneaddata_database# 包括人基因组bowtie2/bmtagger、人类转录组、核糖体RNA和小鼠基因组# 下载人基因组bowtie2索引 3.44 GBmkdir -p {db}/kneaddata/human_genome kneaddata_database --download human_genome bowtie2 /kneaddata/human_genome
方法1. 新建虚拟环境安装:安装MetaPhlAn2、HUMAnN2和所有依赖关系,并记录主要软件版本
# conda install humann2=2.8.1 -c bioconda -yconda create -n humann2 humann2=2.8.1 -c bioconda -yconda activate humann2# 记录核心软件版本humann2 --version # humann2 v2.8.1metaphlan2.py -v # MetaPhlAn version 2.7.5 (6 February 2018)diamond help # v0.8.22.84
方法2. Conda导入和导出环境
# 安装conda-packconda install -c conda-forge conda-pack#conda 安装不成功可用pip安装# pip conda-pack# 安装好的环境下打包导出conda pack -n humann2 -o humann2.tar.gz# 下载wget -c http://210.75.224.110/db/humann2/humann2.tar.gz
# 新建文件夹存放humann2环境mkdir -p ~/miniconda3/envs/humann2tar -xzf humann2.tar.gz -C ~/miniconda3/envs/humann2# 激活环境conda activate humann2# 初始化conda unpack
测试流程是否可用
humann2_test
显示可用分类、泛基因组和功能数据库
humann2_databases
安装数据库(注:数据库下载慢或失败,附录有国内备份链接)
cd {db} mkdir -p /humann2 # 建立下载目录# 输助比对数据库 593MBhumann2_databases --download utility_mapping full {db}/humann2 # 微生物泛基因组 5.37 GB humann2_databases --download chocophlan full /humann2# 功能基因diamond索引 10.3 GBhumann2_databases --download uniref uniref90_diamond $/humann2
# 设置数据库位置# 显示参数humann2_config --print# 如修改线程数,推荐3-8,根据实际情况调整humann2_config --update run_modes threads 3humann2_config --update database_folders utility_mapping {db}/humann2/utility_mapping humann2_config --update database_folders nucleotide /humann2/chocophlanhumann2_config --update database_folders protein $/humann2/uniref# metaphlan2数据库默认位于~/miniconda3/envs/biobakery/bin/ 程序所在目录的db_v20 (v0.11)和databases(2.8.1)下humann2_config --print# 例如,链接下载的metaphlan2:ln -s pwd/metaphlan2 ~/miniconda3/envs/biobakery/bin/databases
主页:https://github.com/mlangill/microbiome_helper
下载并安装
# 下载、解压 、添加环境变量wget -c https://github.com/LangilleLab/microbiome_helper/archive/master.zipunzip master.zipexport PATH=pwd/microbiome_helper-master:PATH # 写入bashrc永久添加环境 echo "export PATH=`pwd`/microbiome_helper-master:\PATH" >> ~/.bashrc
# metaphlan_to_stamp.pl 这个脚本有修改,修改后的脚本在db/script/下,也在QQ群文件中#----修改的内容如下----------------------------------------# my @taxa_ranks=("Kingdom","Phylum","Class","Order","Family","Genus","Species", "Strain");># #start with assumption that this is not metaphlan2# my $metaphlan2_version=1;#------------------------------------------------------
# GraPhlAn核心程序包conda install graphlan=1.1.3 -c bioconda -ygraphlan.py --version # 1.1.3 (5 June 2018)# GraPhlAn输入文件制作程序,如转换LEfSe、Metaphlan2结果格式为GraPhlAn用于绘图conda install export2graphlan # 38 KBexport2graphlan.py -h # 0.22 of 05 May 2020
conda install lefse -c bioconda -y # 76.3 MB, 1.0.8.post1
# Rstudio中运行命令调用R版本问题的解决# 在Rstudio中默认调用Rstudio的R,具体写在/etc/rstudio/rserver.conf# 或在R中用Sys.getenv()["R_HOME"]# 在rpy2中print(robjects.r)可以查看其调用的r版本
# 指定lefse调用的R版本,需根据conda实际目录修改sed -i "2 i os.environ['R_HOME'] = '/conda/envs/meta/lib/R/'" /conda/envs/meta/share/lefse-1.0.8.post1-1/lefse.py
物种注释:基于LCA算法的物种注释kraken2 https://ccb.jhu.edu/software/kraken/
安装方法1. 直接安装并查看版本
conda install kraken2 -c bioconda -ykraken2 --version # 2.1.1conda install bracken=2.6.0 -c bioconda
安装方法2. 新建环境安装并启动软件环境
conda create -n kraken2 -y -c bioconda kraken2conda activate kraken2conda install bracken=2.6.0 -c bioconda# krakentools 0.1 补充脚本conda install krakentools -c bioconda# krona绘图conda install krona -c bioconda
安装方法3. conda导入和导出
# 从安装好的环境打包,此处为Ubuntu 20.04LTS# conda pack -n kraken2 -o ~/db/kraken2/kraken2.tar.gz# 添加权限,否则别人无法下载# chmod 777 ~/db/kraken2/kraken2.tar.gz# 下载压缩包wget -c http://210.75.224.110/db/kraken2/kraken2.tar.gz# 新建文件夹存放kraken2环境mkdir -p ~/miniconda3/envs/kraken2# 解压环境到指定目录tar -xzf kraken2.tar.gz -C ~/miniconda3/envs/kraken2# 激活环境和初始化conda activate kraken2conda unpack# 启动指定目录中的环境# source ~/miniconda3/envs/kraken2/bin/activate
下载数据库(NCBI每2周更新一次),记录下载日期和大小。需根据服务器内存、使用目的选择合适方案。--standard标准模式下只下载5种数据库:古菌archaea、细菌bacteria、人类human、载体UniVec_Core、病毒viral。也可选直接下载作者构建的索引,还包括bracken的索引。
下载标准+原生动物+真菌+植物8GB(PlusPFP-8)数据库,包括kraken2和bracken2的索引。更多版本数据库详见:https://benlangmead.github.io/aws-indexes/k2 。
mkdir -p ~/db/kraken2 && cd ~/db/kraken2
方案1. 迷你库(8G,低配推荐)
# 压缩包5.2G,wget -c https://genome-idx.s3.amazonaws.com/kraken/k2_pluspf_8gb_20210517.tar.gz# 备用地址:# wget -c http://210.75.224.110/db/kraken2/k2_pluspf_8gb_20210517.tar.gztar xvzf k2_pluspf_8gb_20210517.tar.gz
方案2. 完整库(70G,高配推荐)
压缩包70G,解压后100G。指定解压目录,包括时间和类型。201202为更新时间,pfp指标准库+原生动物+真菌+植物。注:但我使用中发现仍然没有真菌。
d=201202pfpmkdir {d} wget -c https://genome-idx.s3.amazonaws.com/kraken/k2_pluspfp_20201202.tar.gz tar xvzf k2_pluspfp_20201202.tar.gz -C
方案3. 第3方个性数据库(人和病毒含新冠),仅用于病毒检测
https://genexa.ch/sars2-bioinformatics-resources/
wget -c https://storage.googleapis.com/sars-cov-2/kraken2_h%2Bv_20200319.tar.gzmkdir -p 200319hv/tar xvzf kraken2_h+v_20200319.tar.gz -C 200319hv/
方案1. 标准库安装,下载数据~100GB,时间由网速决定,索引5h,多线程可加速至1h完成
cd {db} d=210808 mkdir -p kraken2/d && cd kraken2/$dkraken2-build --standard --threads 24 --db ./
方案2. 自定义微生物数据库,如标准+真菌+原生动物+质粒+植物
cd {db} d=210808fpf mkdir -p kraken2/d && cd kraken2/d # 显示帮助 kraken2-build -h # 下载物种注释 kraken2-build --download-taxonomy --threads 24 --db ./ # 下载数据库,需要12-24小时 for i in archaea bacteria UniVec_Core viral human fungi plasmid protozoa plant; do kraken2-build --download-library i --threads 24 --db ./done# 确定的库建索引,4p,4htime kraken2-build --build --threads 48 --db ./# bracken索引,长度推荐100/150, 24p,1h;time bracken-build -d ./ -t 24 -k 35 -l 100time bracken-build -d ./ -t 24 -k 35 -l 150
# 快速组装megahitconda install megahitmegahit -v # v1.2.9
# metaSPAdes拼接,只是spades系列中的一个定制脚本conda install spades # 12.8 MBmetaspades.py -v # v3.14.0 [metaSPAdes mode]
conda install quast -y # 87.2 MBmetaquast.py -v # QUAST v5.0.2 (MetaQUAST mode)
# 细菌基因组注释prokkaconda install prokka -y # 352.8 MBprokka -v # 1.14.6
conda install cd-hit # 790 KBcd-hit -v # 4.8.1 (built on May 14 2019)
# emboss transeq工具,93.9 MBconda install emboss -yembossversion # 6.6.0.0
conda install salmon -y # 17.8 MBsalmon -v # 1.3.0
https://www.kegg.jp/kegg-bin/show_brite?ko00001.keg 下载htext
# 转换ABCD为列表kegg_ko00001_htext2tsv.pl -i ko00001.keg -o ko00001.tsv# 统计行数,2021.1月版55761行,整理后为55103个条目wc -l ko00001.*# 统计各级数量, /54/527/23917for i in seq 1 2 8;docut -f {i} ko00001.tsv|sort|uniq|wc -l ; done # 生成KO编号和注释列表 cut -f 7,8 ko00001.tsv|sort|uniq|sed '1 i KO\tDescription' \ > KO_description.txt # KO与通路(Pathway)对应表,用于合并D级为C级 awk 'BEGIN{FS=OFS="\t"} {print 7,$6}' ko00001.tsv | sed '1 i KO\tpathway' > KO_path.list
seq 1 2 8
eggNOG http://eggnogdb.embl.de
# 新版要求python3.7,需要新环境conda create -n eggnogconda activate eggnog# 安装eggnog比对工具emapperconda install eggnog-mapper -y -c biocondaemapper.py --version # 2.1.6
# 下载常用数据库,注意设置下载位置mkdir -p {db}/eggnog && cd /eggnog# -y默认同意,-f强制下载,eggnog.db.gz 7.9G+4.9Gdownload_eggnog_data.py -y -f --data_dir ./
# 下载方式2(可选):链接直接下载wget -c http://eggnog5.embl.de/download/emapperdb-5.0.2/eggnog.db.gz # 6.3Gwget -c http://eggnog5.embl.de/download/emapperdb-5.0.2/eggnog.taxa.tar.gz # 69Mwget -c http://eggnog5.embl.de/download/emapperdb-5.0.2/eggnog_proteins.dmnd.gz # 4.9Ggunzip *.gz
# 备用链接wget -c http://210.75.224.110/db/eggnog/5.0.2/eggnog.db.gzwget -c http://210.75.224.110/db/eggnog/5.0.2/eggnog.taxa.tar.gzwget -c http://210.75.224.110/db/eggnog/5.0.2/eggnog_proteins.dmnd.gzgunzip *.gztar xvf eggnog.taxa.tar
# 如果内存够大,复制eggNOG至内存加速比对# cp eggnog.* /dev/shm
# dbCAN2 http://bcb.unl.edu/dbCAN2# 创建数据库存放目录并进入mkdir -p {db}/dbcan2 && cd /dbcan2# 下载序列和描述wget -c https://bcb.unl.edu/dbCAN2/download/CAZyDB.09242021.fawget -c https://bcb.unl.edu/dbCAN2/download/Databases/V10/CAZyDB.07292021.fam-activities.txt# 提取基因家簇对应注释# wget http://210.75.224.110/db/dbcan2/CAZyDB.07292021.fam-activities.txtgrep -v '#' CAZyDB.07292021.fam-activities.txt |sed 's/ //'| sed '1 i CAZy\tDescription' > CAZy_description.txt# 备用数据库下载地址并解压# wget -c http://210.75.224.110/db/dbcan2/CAZyDB.09242021.fa.gz# gunzip CAZyDB.09242021.fa.gz# diamond建索引,1G,1-18mconda activate eggnogdiamond --version # 2.0.13time diamond makedb --in CAZyDB.09242021.fa --db CAZyDB.09242021# 压缩原始数据节约空间gzip CAZyDB.09242021.fa
官网:https://card.mcmaster.ca
Github: https://github.com/arpcard/rgi
Bioconda: http://bioconda.github.io/recipes/rgi/README.html
软件安装
# 方法1. Conda新建环境安装rgi(推荐)conda create -n rgi -c bioconda rgi=5.2.1
# 方法2. rgi环境导出和导入# 安装好的环境下打包导出,262Mconda pack -n rgi -o rgi.tar.gz
# 下载软件包wget -c http://210.75.224.110/db/conda/rgi.tar.gz# 新建文件夹存放rgi环境mkdir -p ~/miniconda3/envs/rgitar -xzf rgi.tar.gz -C ~/miniconda3/envs/rgi# 激活环境conda activate rgiconda unpack# source ~/miniconda3/envs/rgi/bin/activate
# 方法4. docker安装(需要权限),版本号见conda页面docker pull quay.io/biocontainers/rgi:5.2.1--pyhdfd78af_1
数据库部署
# 下载最新版数据库,2.9M (2021-7-7, 3.1.2)wget -c https://card.mcmaster.ca/latest/data# 解压后20Mtar -xvf data ./card.json# 加载数据库rgi load --card_json card.json
# (可选)宏基因组分析扩展数据库和加载rgi card_annotation -i card.jsonrgi load -i card.json --card_annotation card_database_v3.1.2.fasta
# http://dantaslab.wustl.edu/resfamsmkdir -p {db}/resfam && cd /resfam# 官网的数据格式非常混乱, 推荐下载我手动整理的索引和注释wget http://210.75.224.110/share/Resfams-proteins.dmnd # 1.5 MBwget http://210.75.224.110/share/Resfams-proteins_class.tsv # 304 KB
# http://www.mgc.ac.cn/VFs/mkdir -p {db}/vfdb && cd /vfdb# 毒力因子描述文件wget -c http://www.mgc.ac.cn/VFs/Down/VFs.xls.gz# 核心数据库(966K)wget -c http://www.mgc.ac.cn/VFs/Down/VFDB_setA_pro.fas.gz# 完整数据库(5.3M)wget -c http://www.mgc.ac.cn/VFs/Down/VFDB_setB_pro.fas.gz# 解压gunzip *.gz
# 方法1. conda在线安装物种注释和分箱流程 https://github.com/bxlab/metaWRAPconda create -y -n metawrap python=2.7 # 22.2MBconda activate metawrapconda config --add channels urskyconda install -y -c ursky metawrap-mg # 1.14 GB, v1.2
# 方法2. 安装好的环境下打包导出,最新版1.3# 设置conda位置soft=~/miniconda3/# conda pack -n metawrap1.3 -o metawrap1.3.tar.gz# 下载最新环境wget -c http://210.75.224.110/db/metawrap/metawrap1.3.tar.gz# 新建文件夹存放metawrap1.3环境mkdir -p {soft}/envs/metawrap1.3 tar -xzf metawrap1.3.tar.gz -C /envs/metawrap1.3# 激活环境source $/envs/metawrap1.3/bin/activate
# 相关数据库,大小近300GB# 这里我们安装数据库到~/db目录,保证你有权限,# 但要保证至少有500GB的空间。请根据你的情况修改为自己有权限且空间足够的位置。# 多人使用,建议管理员统一安装节省空间cd $
~/db
## CheckM用于Bin完整和污染估计和物种注释mkdir -p checkm && cd checkm# 下载文件275 MB,解压后1.4 GBwget -c https://data.ace.uq.edu.au/public/CheckM_databases/checkm_data_2015_01_16.tar.gz# 国内备用链接# wget -c http://210.75.224.110/share/meta/checkm/checkm_data_2015_01_16.tar.gztar -xvf *.tar.gz# rm *.gz# 设置数据库位置checkm data setRoot# 按提示输出你数据下载的路径或直接回车默认为当前位置
## NCBI_nt核酸序列用于bin物种注释# 41GB,我下载大约12h;解压后99GBcd {db} mkdir -p NCBI_nt && cd NCBI_nt wget -c "ftp://ftp.ncbi.nlm.nih.gov/blast/db/nt.*.tar.gz" # 备用下载链接,或百度云下载 # wget -c http://210.75.224.110/share/meta/NCBI_nt/filelist.txt # for a in `cat filelist.txt`; do wget -c http://210.75.224.110/share/meta/NCBI_nt/a; donefor a in nt.*.tar.gz; do tar xzf $a; done &
## NCBI物种信息# 压缩文件45M,解压后351Mcd $mkdir NCBI_taxcd NCBI_taxwget ftp://ftp.ncbi.nlm.nih.gov/pub/taxonomy/taxdump.tar.gztar -xvf taxdump.tar.gz
## 人类基因组去宿主cd $mkdir -p metawrap/BMTAGGER && cd metawrap/BMTAGGERwget -c ftp://hgdownload.soe.ucsc.edu/goldenPath/hg38/chromosomes/*fa.gzgunzip *fa.gzcat fa > hg38.farm chr.fa# 上方下载太慢,使用国内备份链接手动下载wget -c http://210.75.224.110/share/meta/metawrap/BMTAGGER/hg38.fabmtool -d hg38.fa -o hg38.bitmasksrprism mkindex -i hg38.fa -o hg38.srprism -M 100000
## KRAKEN物种注释数据库# 下载建索引需要 > 300GB以上空间,完成后占用192GB空间cd $mkdir -p krakenkraken-build --standard --threads 24 --db kraken > log &kraken-build --db kraken --clean# 手动下载cd krakenwget -c http://210.75.224.110/share/meta/kraken/database.kdbwget -c http://210.75.224.110/share/meta/kraken/database.idxmkdir -p taxonomy && cd taxonomywget -c http://210.75.224.110/share/meta/kraken/taxonomy/nodes.dmpwget -c http://210.75.224.110/share/meta/kraken/taxonomy/names.dmp# 从其它位置复制# cp -r /db/kraken/* ./
## 数据库位置设置which config-metawrap# 配置文件通常为~/miniconda3/envs/metawrap/bin/config-metawrap# 使用Rstudio/vim等文本编辑器来修改数据库的位置
挑单菌测序的基因组存在大量冗余。
metawrap混合分箱的结果中冗余度非常低,甚至无冗余。而单样本、分批次分箱的结果中存在大量冗余,需要采用derep分箱获得非冗余的基因组。
conda create -n drepconda activate drepconda install drep -c bioconda
Github: https://github.com/Ecogenomics/GTDBTk
GTDB-Tk是一个软件工具包,用于根据基因组数据库分类法GTDB为细菌和古细菌基因组分配客观的分类法。它旨在与最近的进展一起使用,从而可以直接对环境样本中获得数百或数千个由基因组组装的基因组(MAG)进行物种分类注释。它也可以用于分离和单细胞的基因组物种注释。
本次测试版本为 GTDB-Tk v1.3.0,于2020年7月17发布,参考数据为95版。
硬件要求:
内存100Gb
硬盘27Gb
64核1小时可分析1000个细菌基因组
Conda安装:
conda create -n gtdbtkconda activate gtdbtk# gtdbtk-1.3.0, 2020-9-27conda install -c bioconda gtdbtk
download-db.sh自动下载数据库,将下载至conda中的envs/gtdbtk/share/gtdbtk-1.3.0/db/:
download-db.sh
(可选)手动下载和配置GTDB参考基因组最新版(测试时为95版,34Gb)
mkdir -p ~/db/gtdb & cd ~/db/gtdb# 下载解压wget -c https://data.ace.uq.edu.au/public/gtdb/data/releases/latest/auxillary_files/gtdbtk_data.tar.gztar zxvf gtdbtk_data.tar.gz# 设置数据库位置,注意修改软件安装位置locate gtdbtk.sh # 查找配置文件位置# 修改PATH=后面的路径为数据库解压目录,如/home/meta/db/gtdb/release95/vim /conda/envs/gtdbtk/etc/conda/activate.d/gtdbtk.sh
此外:GTDB数据库国内下载备份链接见 http://nmdc.cn/datadownload
# Bin可视化VizBin (可选)sudo apt-get install libatlas3-base libopenblas-base default-jrecurl -L https://github.com/claczny/VizBin/blob/master/VizBin-dist.jar?raw=true > VizBin-dist.jarmv VizBin-dist.jar /usr/local/bin # 或~/bin
# 比对结果整理samtoolsconda install samtools
### CARD(选学) https://card.mcmaster.ca/download# 方法1. 直接conda安装conda install --channel bioconda rgi# 方法2. 虚拟环境安装conda activate metawrapconda install --channel bioconda rgirgi main -v # 4.0.3# rgi教程 https://github.com/arpcard/rgi
http://nmdc.cn/datadownload
本资源由宏基因组平台发起,微生物所提供服务器,宏基因组团队负责维护的常用软件、扩增子和宏基因组数据库的国内下载链接,解决常用数据库下载慢、或无法下载的问题。同时提供定制的软件、数据库索引,节约大家下载时间,节省数据库编制索引的计算资源消耗。
详细下载链接和说明见:https://github.com/YongxinLiu/MicrobiomeStatPlot/blob/master/Data/BigDataDownlaodList.md
下载的tar.gz压缩包,可放置于指定目录,使用tar -xvzf *.tar.gz解压
tar -xvzf *.tar.gz
个人网站备用下载链接,带宽有限,推荐官方、数据中心和百度云失败再尝试此法
# humann3site=http://210.75.224.110/dbwget -c {site}/humann3/full_chocophlan.v296_201901.tar.gz wget -c /humann3/uniref90_annotated_v201901.tar.gzwget -c $/humann3/full_mapping_v201901.tar.gzmkdir -p chocophlan uniref utility_mappingtar xvzf full_chocophlan.v296_201901.tar.gz -C chocophlan/tar xvzf uniref90_annotated_v201901.tar.gz -C uniref/tar xvzf full_mapping_v201901.tar.gz -C utility_mapping/
大文件的分卷压缩和解压 以kraken2 hash.k2d为例
cd ~/db/kraken2_200706# https://www.cnblogs.com/wang--lei/p/9046643.html# 文件夹kraken2idx/打包压缩,1htar -zcvf kraken2.tar.gz kraken2idx/# b分割为指定大小文件G/M/K,-d数字,a序列长度,输入和输出前缀split -b 13G -d -a 1 kraken2.tar.gz kraken2.tar.gz.# 一行命令tar -zcvf kraken2.tar.gz kraken2idx/ | split -b 19G -d -a 1 - kraken2.tar.gz.# 分割后解压缩cat kraken2.tar.gz.* | tar -zxv
# 附tar打包用法,c创建、v输出过程,z压缩,f文件 ,x解压单个文件压缩打包 tar -cvzf my.tar.gz file1多个文件压缩打包 tar -cvzf my.tar.gz file1 file2 file*)(也可以给file*文件mv 目录在压缩)单个目录压缩打包 tar -cvzf my.tar.gz dir1多个目录压缩打包 tar -cvzf my.tar.gz dir1 dir2解包至当前目录:tar -xvzf my.tar.gz
conda install -y fastqc multiqc kneaddata=0.6.1 humann2 graphlan export2graphlan lefse kraken2 megahit spades quast prokka cd-hit emboss salmon eggnog-mapper samtools
# 解决思路,新建虚拟环境,安装kneaddata,再安装对应java版本# 务必指定2.7,软件依赖2.7的python,但conda会自动安装3.6,运行报错conda create -n kneaddata python=2.7conda activate kneaddataconda install openjdk=8.0.152conda install kneaddata=0.6.1
# 0.7.4存在对旧格式fastq去宿主后数据极少或双端数据不对称,可指定版本安装0.6.1conda remove kneaddataconda install kneaddata=0.6.1 # 175 MB
# 可选:链接直接下载、百度云链接(宏基因组公众号回复:数据库)或国内备份链接mkdir -p {db}/humann2/chocophlan && cd /humann2/chocophlanwget -c http://210.75.224.110/share/meta/full_chocophlan_plus_viral.v0.1.1.tar.gztar xvzf full_chocophlan_plus_viral.v0.1.1.tar.gz# uniref90和50任选其1,推荐uniref90更全5.9 GBcd $/humann2wget -c http://210.75.224.110/share/meta/uniref90_annotated_1_1.tar.gztar xvzf uniref90_annotated_1_1.tar.gz# 内存<32G内存选uniref5 (2.5 GB)# wget -c http://210.75.224.110/share/meta/uniref50_annotated_1_1.tar.gz# tar xvzf uniref50_annotated_1_1.tar.gz# 不要同一文件中有两个文件,会先比90,再比50出现混乱
# 下载mkdir -p {db}/metaphlan2 && cd /metaphlan2wget -c http://210.75.224.110/db/humann2/metaphlan2.tar.gztar xvzf metaphlan2.tar.gz# 链接到软件安装目录mkdir -p {soft}/envs/metagenome_env/bin/databases ln -s /metaphlan2/* $/envs/metagenome_env/bin/databases/
官方教程详见 https://github.com/DerrickWood/kraken2/blob/master/docs/MANUAL.markdown
设定数据库日期为版本,建立数据库目录
d=200918cd ~/dbmkdir -p kraken2/d && cd kraken2/d
下载物种名信息表,gb 1.8G; wgs 3.3G; 解压后大小为9.2/21G; taxdump 50M
kraken2-build --download-taxonomy --threads 24 --db ./
序列数据库包括 archaea bacteria plasmid viral human fungi plant protozoa nr nt env_nr env_nt UniVec
下载单个真菌库为例
i=fungikraken2-build --download-library i --threads 24 --db ./ # 批量下载数据库,除默认5种外新加植物、真菌、原生生物和质粒,下载需几小时-数天 archaea bacteria UniVec_Core viral human fungi plant for i in protozoa plasmid; do kraken2-build --download-library i --threads 24 --db ./done
# 建索引,4h, 40h;2h,40htime kraken2-build --build --threads 24 --db ./
# 数据库大小,2020/4/12更新du -sh library/*918M archaea74G bacteria1.2G fungi3.1G human51G plant2.0G plasmid877M protozoa2.0M UniVec_Core310M viral
常见问题:Perl版本不对,人工指定perl版本如下
PERL5LIB=~/miniconda3/envs/kraken2/lib/site_perl/5.26.2/x86_64-linux-thread-multi:~/miniconda3/envs/kraken2/lib/site_perl/5.26.2:~/miniconda3/envs/kraken2/lib/5.26.2/x86_64-linux-thread-multi:~/miniconda3/envs/kraken2/lib/5.26.2
# 如不可用,尝试下载二进制和添加环境变量wget https://github.com/COMBINE-lab/salmon/releases/download/v0.14.0/salmon-0.14.0_linux_x86_64.tar.gztar xvzf salmon-0.14.0_linux_x86_64.tar.gzcp -rf salmon-latest_linux_x86_64/ {soft}/envs/metagenome_env/share/salmon /envs/metagenome_env/share/salmon/bin/salmon -v # 0.14.0
下载最新版的NCBI_nt,但与相应的blast版本不兼容,应该是本地软件版本太低。
方法1. 使用which config-metawrap配置为以前下载的旧版NCBI_nt库位置可用(2018年及以前下载)。
# 备用nt下载链接mkdir -p NCBI_nt && cd NCBI_ntwget -c http://210.75.224.110/db/metawrap/NCBI_nt_181116/filelist.txtfor a in cat filelist.txt; do wget -c http://210.75.224.110/db/metawrap/NCBI_nt_181116/a; done for a in nt.*.tar.gz; do tar xzf a; done# 配套tax下载链接mkdir -p NCBI_tax && cd NCBI_taxwget -c http://210.75.224.110/db/metawrap/NCBI_tax_181116/taxdump.tar.gztar xzf taxdump.tar.gz
cat filelist.txt
方法2,或升级blast为最新版。直接到https://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/LATEST/,下载最新版本blastn,再到conda的metawrap环境bin目录下,替换掉旧版本的blastn
以下小工具已经整合至EasyMicrobiome项目中的linux文件夹,以下代码提供学习多种自主安装的参考方法,用于积累conda使用
并行计算管理rush/paprllel
# conda安装rush,无依赖关系更好用的并行工具conda install rush -c bioconda# Ubuntu下安装方法 apt install parallel# conda安装parallel,版本有点老conda install parallel -c biocondaparallel --version # GNU parallel 20170422
表格统计工具csvtk和序列处理seqkit(可选中)
# 方法1. conda安装,可能有点旧conda install csvtk -c biocondaconda install seqkit -c bioconda
# 方法2. 直接下载最新版 https://github.com/shenwei356,如以csvtk为例手动安装wget -c https://github.com/shenwei356/csvtk/releases/download/v0.22.0/csvtk_linux_amd64.tar.gztar xvzf csvtk_linux_amd64.tar.gzcp csvtk ~/miniconda3/bin/
以Ensemble中拟南芥为例:Arabidopsis thaliana -- Genome assembly -- Download DNA sequence (无反应),点TAIR链接跳转ENA,下载All Seq FASTA
wget https://www.ebi.ac.uk/ena/browser/api/fasta/GCA_000001735.1?download=true&gzip=truemv GCA_000001735.1?download=true TAIR10.fa
以Ensemble中水稻为例:Oryza sativa Japonica —— IRGSP-1.0
wget https://www.ebi.ac.uk/ena/browser/api/fasta/GCA_001433935.1?download=true&gzip=truemv GCA_001433935.1?download=true IRGSP1.0.fa
扩增子、宏基因组分析常用软件、数据库、脚本文件