前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >生信马拉松 Day14 conda!

生信马拉松 Day14 conda!

原创
作者头像
阿呆的月历
发布2024-02-04 23:14:08
960
发布2024-02-04 23:14:08
举报
文章被收录于专栏:生信马拉松生信马拉松

今天终于学到了怎么安装软件,顺道解决了conda是什么的疑惑

anaconda:所有语言的包、依赖和环境管理器,几乎全平台(Windows、macOS、Linux)

相比手动装软件,可以解决很多问题

来自:生信技能树,生信马拉松,萌老师
来自:生信技能树,生信马拉松,萌老师

anaconda适合于本地安装,miniconda是本节课学习的安装在自己服务器账号的软件

miniconda没有图形界面

服务器在国内,conda安装时就使用国内镜像,通常选择清华或者北外,如果服务器在国外就选择官网

可以使用 wget 下载conda的安装包

-c continue,断点续传,恢复获取部分下载的文件

也可以检索conda+清华/北外镜像从网站上获取

安装miniconda3

1.运行 bash Miniconda3-latest-Linux-x86_64.sh

2.查看并同意软件license

3.选择安装位置

4.同意conda初始化

5.重新加载~/.bashrc文件或者重新开shell窗口

6.设置是否要默认启动base环境(可选)

代码语言:sh
复制
conda -h
# 能输出conda 的帮助文档就说明安装成功
conda config --set auto\_activate\_base false 
#这样设置之后就每次需要手动登录conda,一般不设置

conda需要添加频道

类似于电视机的频道,要收得到对应的频道的信号才能看到该频道的节目,要配置好conda的频道才能用conda安装该频道的软件

代码语言:sh
复制
conda config --add channels <URL>

conda config --set show\_channels\_urls yes
#可以帮我们找到出错的包是从哪个频道下载的,那么只要换个地方下载即可

不要重复添加相同的频道

添加的顺序是有意义的,因为我们用的大多数软件主要在bioconda里,所以把相应频道列在最前面,conda就会最先找

如何查看配置镜像结果:配置镜像完成后会在~/.condarc 文件中写入

代码语言:sh
复制
cat ~/.bashrc
# 查看镜像配置的结果

可以考虑手动删除defaults,因为是官方频道,有时连接比较慢

代码语言:sh
复制
sed -i‘/defaults/d' ~/.condarc

创建独立小环境建议不要往base环境安装任何软件包,如果不小心装进base里了,那只要conda还能用就不管它,原因如下:

1、conda会改变原来设置好的环境

2、不同的软件的依赖会相互冲突

3、方便项目管理(基因组,转录组,Chip-seq,相应就算是同一个软件在不同的环境里都要重新安装一遍,不用担心多个安装软件占据太多存储,因为软件远不如数据大)

代码语言:sh
复制
conda create -n rna
#创建一个名为rna的conda小环境
# -n  指定环境名称

conda env list
#展示全部已经有的环境
conda info -env
# 看环境的信息,两者效果相同

conda remove -n rna --all
# 删除环境及包

conda create -n rna python=3.8 -y
# 创建环境时可以预装软件并指定版本
# -y的作用是代替我写yes去安装

conda只要能正常使用就没有必要升级,但3.8以后conda有较大的更新,更早的版本conda建议升级

创建小环境成功之后会出现3个done,代表成功了

哪些软件可以用conda安装?

方法1:网站查询

https://anaconda.org/search

https://bioconda.github.io/

方法2:conda search xxx

方法3:关键词检索

conda可以一次安装多个软件,但是容易遇到报错

下载过程可能受网络影响没下载成功,可以自行再运行一遍一遍,出现3个done表示安装成功,并通过调用软件的帮助文档检查是否安装成功

不指定版本时安装最新的版本

问题1:如何安装旧版本

1、conda search fastq 查看有哪些可以安装的版本

2、安装指定版本的软件

conda install fastqc=0.11.7 注意不要有空格,否则就变成安装fastqc = 0.11.7三个内容

如果要升级,可以conda update或者指定最新版本去安装

安装包的名称和实际调用的程序可能不同

代码语言:sh
复制
conda list

#查看当前环境所安装的软件

conda list fast\*  
# 查看符合正则表达式的软件

conda list -n base python  
# 查看指定环境的软件

conda remove fastq 
# 删除软件
# 一般不删除,可能会引起不必要的依赖相关的玛法

conda remove -n rna fastqc

# 不指定-n就得进入该环境之后才能删除操作

# -y参数能够跳过确认执行的步骤

安装软件的另一种方式:用yml文件安装

适用于已经配置好的环境加粗导出给别人下载安装

导出当前环境:

代码语言:sh
复制
conda env export envname > env.yml #(跨平台均适用)

conda list --explicit > env.txt #(仅限相同平台)

导入环境:

代码语言:sh
复制
conda env create --name <envname> --file env.yml
conda create --name <env> --file <file this file>

常见报错及解决方法:CondaHTTPerror

此时为服务器网络问题,如果是本地网络问题那就根本连不上服务器

1.确认当前服务器网络正常 (可尝试 ping www.baidu.com)

2.conda clean -a 清空环境中所有的缓存tarball 压缩包,index,package(没有安装的包)

3.把~/.condarc中的https中的s去掉变成http,去掉安全相关的交互信息

4.换个时间再试试

一直在solving environment

1.网络差,换个时间试试

2.conda clean -a 清空环境中的缓存

3.实在不行就重新创建环境安装

频道404

添加的频道不存在,从.condarc文件中删除错误频道后重新添加

conda config --add channels https://xxxx

依赖库缺失——缺啥补啥

如果提示确实libtbb.so.2 conda install tbb=2020.3

TIPS

1、把~/.bashrc 当做整体不容易出错

个人感受:能用yml安装还是憋整自己一个个手装了,特别是有个别包打死装不上的时候,我的multiqc就怎么也搞不上,解决方法是把全部的都update,multiqc能用了,原来包的老版本都丢了,尴尬

生信技能树,生信马拉松,萌老师

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • TIPS
相关产品与服务
项目管理
CODING 项目管理(CODING Project Management,CODING-PM)工具包含迭代管理、需求管理、任务管理、缺陷管理、文件/wiki 等功能,适用于研发团队进行项目管理或敏捷开发实践。结合敏捷研发理念,帮助您对产品进行迭代规划,让每个迭代中的需求、任务、缺陷无障碍沟通流转, 让项目开发过程风险可控,达到可持续性快速迭代。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档