Linux服务器上其它软件安装方式

在Linux服务器上除了用conda安装软件外,还有以下几种原始安装软件方式

1.二进制文件安装;
2.源代码安装;
3.java编译的软件

这几种软件安装方式不一定学会,只作为了解,根据文件的帮助文档来决定使用定哪种安装方式,比如在文献里看到一个软件,到网页搜软件库,或是到gitHub搜软件的仓库,仓库会介绍软件的用法,怎么安装以及如何使用。如果搜不到,可能找不到安装方式,或是人家没写,那么就放弃安装这个软件。目前我们用的软件,95%以上是没有界面化的,不像界面化的软件以傻瓜式点..点就能安装。

1.二进制文件【binary】安装

使用二进制安装软件,有3个步骤:下载、解压、添加到PATH

1.1下载:

首先,搜索想要下载的软件,如hisat2,进到官网找到最新的版本,特别注意,找到linux版本,因为要用服务器安装。

官网:

http://daehwankimlab.github.io/hisat2/

hisat2官网

常规下载方式


常规下载方式

找最新更新的,在服务器上安装,和自己的电脑是什么系统没有关系,然后点击右键选择复制链接。

选择最新和匹配服务器的版本

其次,下载,使用wget 命令,-c 表示断点续传,-O 指定保存的文件名称

##新建一个文件夹,把要安装的软件放到里面
mkdir biosoft
cd biosoft/

wget -c https://cloud.biohpc.swmed.edu/index.php/s/oTtGWbWjaxsQ2Ho/download -O hisat2-2.2.1-Linux_x86_64.zipls
##-c正在下载时,网络突然断了,过一会儿或是下次提交命令,会从上次下载断的地方开始下载,如果是下载到99%的时候断了,有-c参数在,就不用重新开始。
##-o参数是指定名字,hisat2-2.2.1-Linux_x86_64.zip是从浏览器复制过来的,或是下载完重命名

下载可能很慢,取决于服务器的网速,与自己电脑网速无关。


网络中断导致
1.2解压
ls
##查看是否下载好了,然后解压
unzip hisat2-2.2.1-Linux_x86_64.zip
ls
##查看解压后的文件
解压过程

解压成功

unzip  hisat2-2.2.1-Linux_x86_64.zip
软件解压成功
cd hisat2-2.2.1/
ls
./hisat2 --help
# echo 'export PATH="${HOME}/biosoft/hisat2-2.2.1/:$PATH" ' >> ~/.bashrc 
ln  -s  ~/biosoft/hisat2-2.2.1/hisat2*   ~/bin/

查看软件里面的内容(绿色的是可执行文件),或是调用帮助文档


调用软件帮助文档

注意:命令不在PATH里,不能随时随地调用文件

路径不对调用不成功例子演示:

hisat2软件本来在安装在biosoft文件夹(目录)里,退出当前路径,调用帮助文档,发现错误。

cd ~
hisat2 --help
不在软件的目录下调用帮助文档报错

出现报错,主要的原因是hisat2不在家目录,而是在biosft

解决的办法是添加到PATH,3种添加到PATH的方法:

1.3添加到PATH
  • 添加到PATH-方法1,临时添加,当次登录有效,不推荐
PATH=/home/ashu/biosoft/hisat2-2.2.1/:$PATH
##查看自己的家目录:pwd
#这个方法的缺陷:修改后能用,下次登录就不能用了
  • 添加到PATH-方法2,追加到~/.bashrc,永久生效。但如果安装软件太多会导致$PATH臃肿,不推荐
echo'export "PATH=$HOME/bin:$PATH"' >> ~/.bashrc
source~/.bashrc

不理解PATH的人去修改PATH,最终导致的结果是他们的环境是有问题的,因为他们没有系统性学过这个变量,不知道怎么去管理。

如何管理PATH

$PATH:理解环境变量$PATH 是非常重要的,对后续的环境和软件管理都非常重要。

推荐方法:在自己家目录下创建一个~/bin/文件夹并将其添加到环境变量,后续安装软件,就将软件的可执行文件拷贝或软链接(绝对路径)到这个bin文件夹(注意双引号里面没有空格):

mkdir~/bin
echo'export "PATH=$HOME/bin:$PATH"' >> ~/.bashrc
source~/.bashrc
  • 添加到PATH-方法3,软链接可执行文件的绝对路径到~/bin,推荐
mkdir ~/bin
echo 'export "PATH=$HOME/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc

pwd
##查看自己的路径:/home/ashu/,后面的内容用tab键补全
ln -s /home/ashu/biosoft/hisat2-2.2.1/hisat2* ~/bin/
ls ~/bin/

~/bin在PATH

查看bin目录文件

2.源代码安装

第二种原始安装方式

源代码【source code】安装,4个步骤:下载,解压,编译三部曲:(configure,make,make install), 添加到PATH。

详细讲解4个步骤:

首先搜索软件,比如在文献里看到的,或是公众号推文看到的软件,如samtools (之前已经用conda安装过)。

搜索samtools软件

samtools官网下载地址:https://www.htslib.org/download/

查找和复制下载链接地址

复制得到的地址:https://github.com/samtools/samtools/releases/download/1.15/samtools-1.15.tar.bz2

2.1下载:把软件下载链接粘贴到服务器
##考虑到之前在conda里安装过samtools,现在练习,先建一个文件夹,以后用来安装文件,隔一段时间清除
mkdir install-packages
ls
cd install-packages/
wget -c https://github.com/samtools/samtools/releases/download/1.15/samtools-1.15.tar.bz2
ls
软件下载完成
2.2 解压软件
tar -jxvf samtools-1.15.tar.bz2
 ###注意不同后缀的压缩文件,用与之对应的压缩命令
 ls
 ##如果解压失败,重新运行下载命令
 tar -jxvf samtools-1.15.tar.bz2
 ls

成功解压后会,ls出现文件


解压过程与结束
2.3 编译三部曲

•./configure --prefix=(检查系统,构建makefile)
•make(编译)
•make install(安装)

cd ~/install-packages/samtools-1.15/
./configure prefix="/home/ashu/biosoft/samtools-1.15/"
make 
##第一次输入这样的命令,跑出一大串不认识的内容,耐心等待进程
make install
  • 编译第一步:./configure --prefix=
    编译第一步
  • 编译第二步:make

输入make命令,出现一连串不认识的东西,第一次使用make这个命令。


编译第二步
  • 编译第三步:make install

输入make install命令


编译第三步
cd ~/biosoft/samtools-1.15/
ls
cd bin/
ls
##bin里面有这些绿颜色可执行的文件,可以添加到小环境里
查看编译三步后的结果

如果编译过程出问题,需要解决环境问题,会非常复杂,需要强大的lLinux基础,有些问题得靠管理员权限来解决。

解决不了只能弃用软件了,选择用conda去安装

2.4 添加到PATH
echo 'export "PATH=$HOME/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc
##"PATH=$HOME/bin:$PATH",如果冒号,逗号之类的打错,就很麻烦,一有点错,PATH变了,命令就用不了

不建议修改PATH或是bashrc,只要把可执行文件软链接到bin目录就好,PATH不变。工具箱层数没有那么多(不发生改变),就是有一层的工具变多。

3. java编译的软件

java编译的软件分为三步:下载、解压、java-jar xxx.jar

还是和前两种方法一样,先搜索需要安装的软件。

所搜软件

软件官网:http://www.usadellab.org/cms/?page=trimmomatic

3.1 下载软件
image.png

复制软件下载地址:
http://www.usadellab.org/cms/uploads/supplementary/Trimmomatic/Trimmomatic-0.39.zip

wget -c http://www.usadellab.org/cms/uploads/supplementary/Trimmomatic/Trimmomatic-0.39.zip
##注意是一整句代码
image.png
3.2 解压
解压

整理文件

mv Trimmomatic-0.39/ ~/biosoft/
##下载的压缩文件放在install-packas
cd ~/biosoft/Trimmomatic-0.39/
##解压好的软件放到biosoft里

按照自己的方式来管理软件的存放位置


把软件放到一个目录下

以上有jar格式的文件

3.3 java-jar xxx.jar

调用软件的方式有以下几种:

  • 第一种:java-jar xxx.jar

xxx代表文件名

##格式:java-jar xxx.jar
java -jar trimmomatic-0.39.jar  --help
image.png
  • 第二种:用绝对路径调用安装的软件帮助文档

只要给对路径,就能调用成功,不用cd到那个文件夹下

cd ~
pwd
##/trainee/Jan22
trimmomatic-0.39.jar

插曲:调用出现报错,这个过程花了我很多时间去探索。

路径报错1:符号/

小郭老师说一般路没有问题会调用成功,我试了很多遍,认真检查


路径报错2:字母大小写

自己基础比较薄弱,之前我用的一个账户是在home目录下,用pwd还是看不出问题,通过Fizilla看树状结构,才发现自己错了。


路径报错3:目录搞错了

坚信小郭老师的话,只要给对路径,就能调用成功,不用cd到那个文件夹下。我就按这个信念,一种种方法去试,一个小小的报错,花了我一个小时,用两个服务账号去验证。

关于解决路径报错问题我单独写一篇推文,如何思考解决报错和总结。

  • 第三种:通过赋值的形式调用
trimmomtic=$HOME/biosoft/Trimmotic-0.39/trimmomtic-0.39.jar
echo $trimmomatic
###赋值和echo出的变量不同,少一个a,以后要在注意细节
报错:软件名输入不对
trimmomatic=$HOME/biosoft/Trimmomatic-0.39/trimmomatic-0.39.jar
##现在深刻明白$HOME的意思,$HOME是家目录,不管它的变量名是什么。
 echo $trimmomatic
 java -jar $trimmomatic --help
 ##调用成功
变量名调用软件帮助文档

95%以上的软件都是用conda来安装,以上”其它软件安装方法“不掌握或是理解没有关系。

以下作为参考,因为方法不断更新

生物信息学常见1000个软件的安装代码!

http://www.biotrainee.com/thread-856-1-1.html

(软件和技术一般更新比较快,链接里有些安装方法可能过时,看看思路。)

参考视频教学

https://www.bilibili.com/video/av28836717

说明

以上内容是听生信技能树小郭老师授课内容以及参考课件。

你可能感兴趣的:(Linux服务器上其它软件安装方式)