##From 生物技能树
一.Conda的安装与使用
1.介绍与安装conda
1.1.Anaconda
所有语言的包、依赖和环境管理器,适用平台:windows、macOS和Linux
官网:Unleash AI Innovation and Value | Anacondahttps://www.anaconda.com/
1.2.Conda的安装与使用
下载安装包 -- bash 安装 -- 接受协议 -- 选择默认安装路径(回车) -- 重新激活环境 -- 调用帮助文档
1.2.1.conda、miniconda 和 anaconda 之间的关系
1.2.2.Anaconda navigator
1.2.3.下载: 通常服务器在国内的选 择清华或者北外, 如果服务器在国外选择官网
1.清华镜像下载
搜索conda清华
2.北外镜像下载
搜索conda北外,找到如下链接:
《Miniconda 安装包可以到 Index of /anaconda/miniconda/ | 北京外国语大学开源软件镜像站 | BFSU Open Source Mirror下载》。点进去ctrl+F查找miniconda3-latest,找到所需的版本,复制链接。
https://mirrors.bfsu.edu.cn/anaconda/miniconda/Miniconda3-latest-Linux-x86_64.sh
wget -c https://mirrors.bfsu.edu.cn/anaconda/miniconda/Miniconda3-latest-Linux-x86_64.sh ##wget -c 下载,也可使用axel下载,axel是多线程工具,wget -c单线程工具,即每次只有一个工人(一个CPU/thread)干活儿
国内镜像地址:wget -c https://mirrors.bfsu.edu.cn/anaconda/miniconda/Miniconda3-latest-Linux-x86_64.shwget -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/Miniconda3-latest-Linux-x86_64.sh官网地址:wget -c https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh![]()
1.2.4.安装miniconda3
a.安装操作:
1.wget -c https://mirrors.bfsu.edu.cn/anaconda/miniconda/Miniconda3-latest-Linux-x86_64.sh ##下载2.bash Miniconda3-latest-Linux-x86_64.sh ##安装3. ##重新加载~/.bashrc文件或者重新开shell窗口a.开个新的窗口。每次重新开个窗口,.bashrc这个文件都会重新加载一次b.source ~/.bashrc 或 . ~/.bashrc ##用source 命令手动加载,后边的 . 相当于 sourceb.Tips:
把 ~/.bashrc 当成一个整体不容易出错也可以 直接退出 当前窗口 重新登录相当于在 Windows 上安装软件后有的会提示需要重新启动能够用 conda -h 输出 conda 的帮助文档就说明安装成功啦!c.设置是否默认激活base:
d.conda频道
配置conda的频道
打个比方。。要收得到对应的 频道 的信号才能看到该频道的 节目要配置好 conda 的 频道 才能用 conda 安装该频道的 软件链接 anaconda | 镜像站使用帮助 | 清华大学开源软件镜像站 | Tsinghua Open Source Mirrorhttps://mirrors.tuna.tsinghua.edu.cn/help/anaconda/
![]()
配置镜像
我们使用 conda 安装软件时,conda 会去 channel 中搜索软件,如果使用的服务器是在国内,channel 就选择国内的,推荐清华,如果清华镜像出问题,再选择其他。
如何添加频道呢?conda config --add channels <URL> ##添加镜像里的a. 找到需要添加的频道b. 鼠标移动到文字上, 当光标变成手指形状时,点击 右键c. 在右键菜单栏里选择“ 复制链接地址 ”d. 用上述命令添加 conda 的频道conda config --add channels bioconda ##添加官方的( 但是不建议运行这一条,仅作为例子 )tips1: 不要重复添加相同的频道,冗余的频道会让安装软件的过程变慢顺序是有意义的tips2: 添加镜像要看服务器所在的位置,不是使用者所在的位置## 配置镜像 # 下面四行配置北京外国语大学的conda的channel地址(首选) conda config --add channels https://mirrors.bfsu.edu.cn/anaconda/pkgs/main/ conda config --add channels https://mirrors.bfsu.edu.cn/anaconda/cloud/conda-forge/ conda config --add channels https://mirrors.bfsu.edu.cn/anaconda/cloud/bioconda/ conda config --set show_channel_urls yes # 下面这四行配置清华大学的conda的channel地址(首选北外,如果体验不好再换成清华) conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/ conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/ conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/bioconda/ conda config --set show_channel_urls yes # 如果需要官方频道,可以添加下面这两行配置官网的channel地址(不推荐) conda config --add channels conda-forge conda config --add channels bioconda # 删除defaults频道 sed -i '/defaults/d' ~/.condarc ## 配置镜像成功 # 查看配置结果 cat ~/.condarc ## 每次更换完频道之后记得要清除一下index。 # -i 是指清除掉构建好的index,清除掉之后才会从新的频道下载软件包 conda clean -i # 也可以把所有的缓存都清除掉 conda clean -a
操作:
# 下面四行配置北京外国语大学的conda的channel地址(首选)
conda config --add channels https://mirrors.bfsu.edu.cn/anaconda/pkgs/main/
conda config --add channels https://mirrors.bfsu.edu.cn/anaconda/cloud/conda-forge/
conda config --add channels https://mirrors.bfsu.edu.cn/anaconda/cloud/bioconda/
conda config --set show_channel_urls yes ##配置镜像cat .condarc ## 查看配置镜像结果sed -i '/defaults/d' ~/.condarc ##删除defaults频道,因为它是官方频道, 有的时候连接起来会很慢
cat .condarc ##查看是否删除defaults
![]()
2.使用conda管理小环境
2.1. 为什么要创建独立的环境? 全装在base里不好吗?
给新人的建议:不要往base环境里安装任何软件包 “蛇”(anaconda)就应该关在“笼子”(小环境)里
2.2.创建独立小环境
2.2.1.创建独立小环境
conda creat -n rna -y ##加个-y提前回答yes,就会直接执行,直到完成
# 创建名为rna的软件环境来安装转录组学分析的生物信息学软件
conda create -y -n rna python=3.7
# 创建小环境成功,并成功安装python3版本
# 每建立一个小环境,安装一个python=3的软件作为依赖
# 查看当前conda环境
conda info -e
conda env list
# 每次运行前,激活创建的小环境rna
conda activate rna
# 退出小环境
conda deactivate
2.2.2.小环境的创、删
comnda creat -n py2 python=2.7 ##创建环境的时候就把软件装上•
创建小环境:-n 指定小环境的名字 py2,并指定环境的python版本为python=2.7
创建小环境: 创建成功最后会出现 3 个 done
3.使用conda管理软件
3.1.安装软件
3.1.1.我要用哪些软件呢?
3.1.2.哪些软件可以用conda安装呢?
三种查询方法:
a.方法1: 网站查询
3.1.3.安装软件
在小环境中安装生信软件:
下载安装软件:conda可以一次安装多个软件,但是容易遇到报错
下载安装软件 :下载过程可能受网络影响没下载成功,如果出现下面的 3 个 done ,即表示下载完成。检查 :通过调用软件的帮助文档来检查是否下载成功。如果失败,重新下载即可注:软件都要安装在小环境中,不要安装在 baseconda env list ##先把环境列出来conda activate rna ##激活rna 环境conda install fastqc ##安装 fastqc 软件![]()
3.1.4.如何指定安装的软件的版本?
操作:![]()
# 激活环境
conda activate rna
# 安装 fastqc 软件
conda install fastqc# 调出帮助文档
fastqc --help# 可以指定软件版本
conda install -y samtools=1.14# 可以一次安装多个软件
conda install -y python=3.7 libstdcxx-ng=9.1.0 trim-galore cutadapt=4 hisat2 subread multiqc samtools=1.16.1 salmon=1.4.0 fastp fastqc
# mamba install -y python=3.7 libstdcxx-ng=9.1.0 trim-galore hisat2 subread multiqc samtools=1.14 salmon=1.4.0 fastp fastqc## 不是通过软件名来调用帮助文档,而是软件的命令
# sra-tools
prefetch --help
prefetch --help
which prefetch# trim-galore
trim_galore --help
cutadapt --help# hisat2
hisat2 --help# subread
featureCounts --help# multiqc
multiqc --help# samtools
samtools --help# salmon
salmon --help# fastp
fastp --help
3.1.5.调用程序

3.1.6.查看conda环境中已安装的软件

3.1.7.删除软件
3.1.8.练习
3.1.9.如何确定软件是否安装上?

操作:
conda search packaging ##缺啥补啥
conda install packaging ##安装一个
conda install python=3.8 ##把问题贴给GTP,GTP提示要升级python版本
multiqc --help ##问题解决
4.conda的常用命令

5.安装软件的另一种方式:用yml文件安装
6.常见报错及解决方法
6.1.CondaHTTPerror
6.2.一直在 Solving environment?
6.3.频道404?
6.4.依赖库文件缺失。

解决方案1:
解决方案2:
解决方案3:
解决方案4:![]()
7.补充内容:axel
lscpu ##查看cpu线程,核,用axel可以更改线程
二.环境变量
1.1.环境变量
1.1.1.echo
常见的环境变量
$HOME
记录了用户的家目录所在的路径
PS1
命令行配色①打印字符串
②打印变量的值
$ echo $HOME /trainee2/vip28 $ echo $PS1 \[\033]2;\h:\u \w\007\033[33;1m\]\u \033[35;1m\t\033[0m \[\033[36;1m\]\w\[\033[0m\]\n\[\e[32;1m\]$ \[\e[0m\] $ echo $PATH /trainee2/vip28/miniconda3/condabin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
想了解更多命令提示符的配色相关的内容: https://wangdoc.com/bash/prompt.html
1.1.2. ~/.bashrc
1.1.3. $PATH
<PATH1>:<PATH2>:<PATH3>:------:<PATHN>
打个比方,PATH 是一个工具箱,有很多层(对应很多个路径),每一层放着各式各样的工具(对应各种命令)。
$ echo $PATH /trainee2/vip28/miniconda3/condabin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin # 可以把 : 替换成换行符 \n $ echo $PATH | tr ':' '\n' /trainee2/vip28/miniconda3/condabin /usr/local/sbin /usr/local/bin /usr/sbin /usr/bin /sbin /bin /usr/games /usr/local/games /snap/bin # 比如 ls 命令存在 $ ls $ which ls ##which可查看ls命令所在的位置 /bin/ls ls /bin ##查看根目录下的bin
1.1.4.如何管理 $PATH
自己加一个变量:
##在家目录下创建一个bin文件夹
mkdir bin
##把bin文件夹放到PATH里边去
echo 'export "PATH=~/bin:$PATH" ' >> ~/.bashrc
##还可以打开bashrc这个文件,直接往里边写
##编辑bashrc
vim ~/ .bashrc
##对照export PATH="/trainee/Apr4311/miniconda3/bin:$PATH",写入命令
export PATH="/trainee/Apr4311/bin:$PATH"
##保存退出
:wq
## conda的特性,source完之后,都会回到base环境
source ~/.bashrc或. ~/ .bashrc
1.2.一个命令能被执行的三个要素

##在Linux里,一切皆文件,例如查看ls命令![]()
尝试自己创建一个命令
##新建一个文件夹,写入一些东西
vim sayhi
##查看
cat sayhi
##查看文件存在服务器里
ll
##当作文件可正常运行
bash sayhi
##给它加上可执行权限chmod u+x sayhi
##家目录不在path里边./sayhi* ##有可执行权限,可放在最前边当作命令来执行,所在的位置,家目录,不在path所在的位置,所以系统不能补全位置
为满足第三个条件,希望它能被系统找到,所以需要把它放到路径在path里边有记录的:##移到已经在path里的bin里mv sayhi bin##查看ls bin/##系统已经自动补齐,从头创建命令成功sa![]()