conda的下载和安装见conda或者见生信技能书推文conda管理生信软件一文就够 安装软件结束后,会出现三个done 但是也只能说明软件安装正常结束,但是不能说明软件能正常使用。 尤其有些需要调py的一些包的时候,会出错,或者python版本不兼容,在使用软件的时候,软件即会出现异常报错。
因此,这篇博文是为了你用conda安装常见软件后,如何确定软件安装正常可被使用!
安装列表
代码语言:javascript复制bwa
gatk4
sra-tools
fastqc
trim-galore
star
hisat2
bowtie2
subread
htseq
multiqc
samtools
安装方法
代码语言:javascript复制参考上面conda安装,这里直接push代码,就当回顾一下~
# 配置过镜像后,家目录下有一个.condarc文件,内容如下
$ cat ~/.condarc
channels:
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/bioconda
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
- defaults
show_channel_urls: true
$ conda create -n rna python=2 -y
$ source activate rna
$ conda install -y sra-tools
# 默认装软件最新版
安装每一个软件和调取帮助文档
代码语言:javascript复制安装成功出现三个done 成功调取这个软件的帮助文档=软件安装成功 问题是我怎么知道出来的帮助文档是对的,而不是报错??!!! 一般情况下,帮助文档的格式都是很统一的,左面是参数,右面是参数的英文解释,而且格式看着很整齐!一般为两列! 如果报错了,出来的内容不同于上面的信息,很乱,还会出现ERROR、NOT、exception等,但重点是你运行该软件的代码的时候,软件不能运行成功!!!! 每一款软件调用帮助文档的方式不同,这又给初学者带去了困扰,具体查看下面代码,希望能帮到你~
# 第一步别忘了激活环境
$ source activate rna
# 安装sra-tools
# 从ncbi下载sra,转化sra文件为fq
# conda安装sra-tools
$ conda install -y sra-tools
# 调取该软件的命令的帮助文档,下面两句是重点
$ prefetch --help
$ fastq-dump --help
$ which prefetch
# 运行结果示例如下
# /home/qmcui/miniconda2/envs/rna/bin/prefetch
# 可以看到这个命令确实你刚装的,而且存在于rna的小环境内bin的目录下
# 也可以不运行which这个命令~,但是当你软件报错的时候,你就要知道这个命令到底是装在哪里的~,就可以which一下!
# 后面格式同上
$ conda install -y bwa
bwa
$ conda install -y gatk4
gatk
$ gatk Tool --help
$ conda install -y fastqc
fastqc --help
$ conda install -y trim-galore cutadapt
trim_galore --help
$ conda install -y star
STAR --help
$ conda install -y hisat2
hisat2 -h
# 等同于hisat2 --help
$ conda install -y bowtie2
bowtie2 --help
$ conda install -y subread
featureCounts
$ conda install -y htseq
htseq-count --help
$ conda install -y multiqc
multiqc --help
$ conda install -y samtools
samtools
which samtools
# /home/qmcui/miniconda2/envs/rna/bin/samtools
写在最后的小技巧
1 如果我不知道我是不是安装过该软件,怎么办? 树曰:
- 那就在运行一次安装呗,没关系,比如conda install -y htseq,结果如下,会出现“# All requested packages already installed.”。说明你已经安装过了,而且版本识最新版本了,conda就不会给你装了。
- 也有一种情况,如果软件被更新了,conda会继续给你装一个最新版本,如果你介意两个版本的软件分析的结果,请不要更新~,那就意味着你不能运行conda install的安装代码了,那怎么办?
- 那么就得直接回答上面的问题,查看这个软件的帮助文档,如果存在,which后,证明环境里确实已经安装,那么版本号怎么找,一般会在--help内看到该命令/软件的版本号,特殊的找不到的话,需要搜索咯
- 如果你还想问,我想知道镜像里这个软件有没有更新,我都知道两种方法,比如conda search 软件名查看最新软件版本,比较一下~
- 提示你更新conda,你可以不更新
$ conda install -y htseq
Solving environment: done
==> WARNING: A newer version of conda exists. <==
current version: 4.5.11
latest version: 4.6.11
Please update conda by running
$ conda update -n base -c defaults conda
# All requested packages already installed.
2 安装过一款软件,我特别想知道他都载入了环境什么命令,能不能从服务器上查询到,这样的话我就不用记住安装过哪个软件,需要调取哪个命令的帮助文档啦???
树曰:
这个方法是有的,如果你上来就先看的这个问题,前面那么多的调取帮助文档的方法你都不用看了,甚至于这篇博文也不用看了,好尴尬,白写了,哈哈哈哈哈哈
前提,前提是你能找到下面图内的路径
代码语言:javascript复制# 这个路径肯定是自己的路径,需要替换
$ cd /home/qmcui/miniconda2/envs/rna/bin
$ ls -trlh
# 每次安装一个软件,最新时间戳生成的命令就是那个软件加载到环境内的命令!
备注:有没有一种情况,你已经装过了,时间戳也没了,怎么办,那你卸载了,重新装一遍呗!哈哈哈