Linux5-软件安装


Linux基础课程系列:


Linux软件安装方法主要包括conda,二进制文件安装,源代码安装,java编译的软件。

一、conda

1. conda简介

conda是所有语言的包、依赖和环境管理器 (Package, dependency and environment management for any language—Python, R, Ruby, Lua, Scala, Java, JavaScript, C/, C++, FORTRAN, and more.)
适用平台: Windows, macOS and Linux.
官网: https://www.anaconda.com/

conda、miniconda和anaconda之间的关系

2. conda安装
  • 下载
    服务器在国内的选择清华或者北外,如果服务器在国外选择官网。
# 国内镜像地址:
wget -c https://mirrors.bfsu.edu.cn/anaconda/miniconda/Miniconda3-latest-Linux-x86_64.sh
wget -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/Miniconda3-latest-Linux-x86_64.s
# 官网地址:
wget -c https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
# wget -c 的-c是断点续传的意思

查看最新安装包:https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/?C=M&O=A

  • 安装
    1. 运行bash Miniconda3-latest-Linux-x86_64.sh
    2. 查看软件license
    3. 同意license
    4. 选择安装位置
    5. 同意conda初始化
    6. 重新加载~/.bashrc文件或者重新开shell窗口 (source ~/.bashrc)
    7. 设置是否要默认启动base环境(可选)
3. conda基本使用
3.1 配置conda频道

下载conda相当于下单了一台电视,安装conda相当于安装好了电视。配置频道就相当于搜索电视机的频道
Anaconda 镜像使用帮助:https://mirrors4.tuna.tsinghua.edu.cn/help/anaconda/,点击'查看完整列表'。

这里都是可以配置的conda频道,添加一些生信相关的即可

  • 如何添加频道呢?(推荐使用北外的)
    conda config --add channels <URL>
  1. 找到需要添加的频道
  2. 鼠标移动到文字上, 当光标变成手指形状时,点击右键
  3. 在右键菜单栏里选择“复制链接地址”
  4. 用上述命令添加conda的频道

北外镜像频道:

conda config --add channels https://mirrors.bfsu.edu.cn/anaconda/pkgs/free/
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 #安装的时候显示链接来源,方便debug

清华镜像频道:

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
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

官方频道:

conda config --add channels bioconda
conda config --add channels conda-forge
conda config --set show_channel_urls yes

tips1: 不要重复添加相同的频道,冗余的频道会让安装软件的过程变慢顺序是有意义的。(如果添加一个已经添加过的频道,conda会把这一频道的优先级提前(moving to the top))
tips2: 添加镜像要看服务器所在的位置,不是使用者所在的位置。
tips3:频道是有优先级的,先添加的频道会到最下面(即后添加的频道优先级更高)。下载时优先搜索优先级更高的。
tips4:查看已添加的频道

conda config --get channels
conda config --show channels

现在提供anaconda镜像的国内大学镜像站点
• 清华大学:https://mirrors.tuna.tsinghua.edu.cn/help/anaconda
• 北京外国语大学:https://mirrors.bfsu.edu.cn/help/anaconda/
• 南京大学:https://mirrors.nju.edu.cn/anaconda/
• 上海交通大学:https://mirrors.sjtug.sjtu.edu.cn/anaconda/
• 北京交通大学:https://mirror.bjtu.edu.cn/anaconda/
若前面的镜像站点使用时出现问题,可以替换成此页的其他镜像站点搜教程时可能会出现“中科大conda镜像”但中科大镜像现已重定向至北外镜像。

3.2 创建独立环境
# 创建名为rna的conda小环境;-n: 指定环境名称
conda create -n rna
# 启动rna这个conda小环境
conda activate rna
# 退出rna这个conda小环境
conda deactivate
# 列出已存在的小环境
conda env list
conda info --env
# 创建环境的时候可以直接安装软件
conda create -n rna fastqc fastp
# 创建环境时也可以预先指定环境的依赖版本
conda create -n py2 python=2.7
# 删除已创建的小环境及安装的包
conda remove -n rna --all
# 如何重命名一个小环境呢?先克隆一个新的,再删除掉旧的
conda create -n Python2
conda create -n py2 --clone Python2
conda remove -n Python2 --all
3.3 安装常用软件
  • 转录组
    质量控制: fastqc、multiqc、fastp、trimmomatic、cutadapt、trim_galore……
    比对&定量: hisat2、bowtie、bowtie2、STAR、salmon、subread(featureCount) ……
    无参组装: Trinity

  • 哪些软件可以用conda安装呢?
    方法1:网站查询
    https://anaconda.org/search
    https://bioconda.github.io/
    方法2:conda search xxx
    方法3:关键词搜索

  • 安装软件
    conda install <SOFTWARE>
    conda install -c 频道 包(从指定频道安装)

  • 如何判断安装完成?
    当出现三个“done”的时候说明软件安装一切正常

  • 指定安装的软件的版本
    在不指定版本的情况下,conda 默认安装该软件的最新版。如果要安装旧版本:
    1. 先看看有哪些可以安装的版本
    conda search fastqc
    2. 安装指定版本的软件
    conda install fastqc=0.11.7
    添加-y参数跳过确认步骤
    conda install -y fastqc=0.11.7

  • 多个软件可以一起安装
    conda install -y multiqc fastp

  • 安装时找不到这个包怎么办?
    1. 确认conda是否能安装你所需要的软件
    2. 确认名字是否打错
    3. 确认你要的包在conda中的名称

  • 安装了这个软件包但是调用不了的情况
    软件包的名称和实际调用的程序不一定是同名的

  • 查看conda环境中已安装的软件
    基本用法:
    查看当前环境所安装的软件:conda list
    扩展用法:
    1.查看符合正则表达式的软件:conda list fast*
    2.查看指定的环境的软件:conda list -n rna

  • 删除软件
    conda remove fastqc
    想要删除特定环境下的特定软件,如何指定
    conda remove -n rna fastqc
    不指定-n参数就得进入该环境之后才能进行删除操作
    同样,-y能够跳过确认执行的步骤

  • 升级软件
    conda update fastqc
    (降级软件只要指定该软件的旧版本就可以了,例如conda install python=2.7)

3.4 conda的常用命令总结

环境管理

conda env list
conda create -n rna
conda activate rna
conda deactivate

软件管理

conda search fastqc
conda install fastqc
conda remove fastqc
conda update fastqc
conda list

更多命令可以查看conda-cheatsheet

4. conda进阶技巧
  • 如果使用conda安装软件时遇到以下问题:
    • conda下载软件的速度特别慢?
    • 一直在处理环境问题?
    • 处理环境问题失败?

可以考虑使用mamba:https://github.com/mamba-org/mamba

mamba并没有完全重新把conda重新写一遍,而是加速了其中的一些线速度的步骤。
1. 对conda install进行改造,使其可以并行下载
2. 增加了一些新功能

  • 安装mamba
    切换到base环境(确保安装在base)
    conda activate base
    在base环境下安装mamba
    conda install mamba

除启动环境外(conda activate rna),所有conda的命令都可以用mamba来代替。
装在base环境中的包在小环境中依然可以调用,因此不需要在每个环境里都安装一遍。

  • 搜索软件
    mamba search fastqc
    mamba repoquery search fastqc (速度更快)

  • 安装软件
    mamba install fastqc(mamba可以多线程地安装软件)

5. 软件管理

可以将软件、项目等创建单独的文件夹进行管理

5. RNAseq常用软件安装
# 启动环境
conda activate rna
# 安装转录组分析需要的软件
conda install -y python=3.7.0 sra-tools=2.10.7 fastqc trim-galore hisat2 subread multiqc samtools salmon=1.4.0 fastp
# 安装aspera软件
conda install -y -c hcc aspera-cli #不在conda库中,单独安装即可

每个软件要能打印得出帮助文档(例如fastqc -h)才算安装成功,但需要注意的是,安装的软件不一定和调用的软件是同名的。

可能遇到的问题:

  • 依赖库文件缺失
    libtbb.so.2 --> mamba install tbb=2020.3
    libstdc++.so.6 --> mamba install libstdcxx-ng=9.1.0

  • 使用mamba时发生ERROR,可以在用conda试一下。

二、二进制文件安装

二进制文件【binary】安装三步走:
1. 下载
2. 解压
3. 添加到PATH

以HISAT2为例

  • 下载:浏览器搜索HISAT2,找到官网,点击download,找到Binary版本,点击链接,选择对应版本,下载到本地(右键复制链接再使用wget -c下载到不是软件,而且速度非常慢)。再传到服务器上。
  • 解压:
unzip hisat2-2.1.0-Linux_x86_64.zip
  • 添加到PATH:
    进入解压的hisat2-2.1.0,使用pwd查看当前路径,将其加入环境变量PATH中。
vim ~.bashrc
#按i进入编辑模式,在最下行输入
export PATH='/hh/biosoft/hisat2-2.1.0:$PATH' #刚刚pwd显示的路径
#写:$PATH是在PATH中添加这一行,不写相当于使用这一句对原有PATH做了替换,原有PATH将不能再使用。

退出vim再重新加载一次bashrc(source ~/.bashrc)

三、源代码安装

源代码【source code】安装
1. 下载
2. 解压
3. 编译三部曲
• configure:检查系统,构建makefile
• make:编译
• make install:安装
4. 添加到PATH

四、java编译的软件

java编译的软件
1. 下载
2. 解压
3. java -jar xxx.jar

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
禁止转载,如需转载请通过简信或评论联系作者。
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 159,015评论 4 362
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,262评论 1 292
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,727评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,986评论 0 205
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,363评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,610评论 1 219
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,871评论 2 312
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,582评论 0 198
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,297评论 1 242
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,551评论 2 246
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,053评论 1 260
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,385评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,035评论 3 236
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,079评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,841评论 0 195
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,648评论 2 274
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,550评论 2 270

推荐阅读更多精彩内容