Linux下安装命令虽然经常使用,但也仅仅是会使用,每次再用时依然的百度 。于是就花了些时间整理了一番,以便于更好地理解。
1.安装流程介绍
在Linux下安装软件,其实也是遵循着和Windows一样的安装流程。
- 首先,从官网网站下载对应软件包到服务器上 。
- 其次,在服务器上进行安装 。
若将以上步骤换成Linux命令的话,就变成具体如下步骤
- 下载:wget
- 安装: 这里的安装有两种方式,分别为:直接安装二进制包: rpm直接安装源码:编译安装
当然除了以上方式,为了减少用户操作,Linux也提供了一个可以将以上步骤合二为一的命令,即:yum .这个命令可以将软件安装包自动下载并且安装,非常的方便 。
可以看出,涉及软件安装常见的方式有三种,分别是:
- 二进制包安装:rpm
- 源码编译安装:make & make install
- 下载并安装:yum
2.安装包介绍
- RPM早期被称为RedHat Package Manager,但由于目前RPM非常流行,且已经成为Linux工业标准。所以RPM现在又被称为RPM is Package Manager。
- make是用来编译编译和安装很多开源的工具。
- YUM被称为 Yellowdog Updater Modified,是一个使用Python语言开发的前端软件包管理器。YUM主要是对RPM包进行管理。
在这里我们必须要理解两个概念,分别是:
- 源码文件,这个很好理解,就是开发编写好的代码,发布后的源码一般都将其打成一个.gz或.tgz的压缩包 。所以,我们在官网上下载到常常是一个压缩包,如:redis-5.0.7.tar.gz
- 二进制文件,简单来说就是Linux的可执行命令文件,比如我们经常使用的一些命令都是二进制文件 。而我们使用到的rpm其实就是将源码文件进行编译成二进制可执行程序并最终打包成rpm格式的安装包 。
通过上面的介绍可以看出 ,我们在Linux下所安装的包一般有两种形式,分别是:
- 以源码形式存在的压缩包,常见的格式有:.tar.gz , .tgz, .tar.bz2格式 ,如redis-5.0.7.tar.gz
- 以rpm格式存在的rpm包 。格式为:软件包名-软件版本-软件发布的次数-适合的 Linux平台-适合的硬件平台-包扩展名 ,比如: httpd-2.2.15-15.el6.centsos.1.i686.rpm
3.安装原理介绍
通过以上介绍,我们知道了安装包存在的形式以及安装方式 ,也就是说我们一般拿到的安装主要就两种形式
- 源码包,通过make & make install 进行编译安装后变成可运行程序 。
- rpm包 , 通过rpm命令或者yum进行安装
具体安装过程如下 :
通过以上介绍,我们知道了不同的包该使用什么方式安装 。那么它们之间到底有啥区别呢 ?
4.安装命令优缺点
4.1 源码安装优缺点
优点:
- 安装包的版本可以自由选择 ,选择自己适合的版本
- 卸载方便 。
- 开源,有能力可以扩展源代码
缺点:
- 安装步骤比较多,总体安装时间也比较长
- 若在编译安装过程中出现问题,问题也更难解决 。
4.2 rpm安装优缺点
优点:
- 软件已经编译打包,所以传输和安装方便,用户可以免除编环节。
- 安装也更加方便和快捷
- 软件信息都已经记录在服务器上,方便查询、升级和卸载 。
缺点:
- 安装前必须要安装所需要的依赖包
- 软件包安装的环境必须与打包时的环境一致或相当
4.3 yum安装优缺点
优点:
- 省去找安装包的过程,一个命令搞定下载和安装 。
- 最大的好处就是解决了rpm中安装包依赖的问题,yum会自动帮你安装依赖包
缺点:
- 安装的版本一般比较老,往往不太符合我们要求 。
5.命令介绍
5.1 rpm命令介绍
rpm不仅仅支持安装,也可以查询、升级、卸载、校验等 。不同的功能都是通过以下的选项控制的。
选项 |
说明 |
备注 |
-i |
表示安装 |
全名:install |
-v |
表示详细信息 |
全名:verbose |
-h |
表示进度 |
全名:hash |
-q |
查询指定的包名 |
全名:query |
-a |
查询所有安装的包 |
全名:all |
-e |
卸载指定的包名 |
|
-U |
升级软件 |
|
-V |
对rpm包进行验证 |
|
-l |
列表该包的文件 |
全名:list |
以上列出的是rpm中一些常用选项,在实际使用中,往往是进行选项的组合 ,比如:
1.安装某个rpm包: rpm -ivh 包名 2.查询所有已安装包: rpm -qa 3.卸载某个已安装包: rpm -e 包名 4.查询某个包中的详细信息:rpm -ql 包名
5.2 yum命令介绍
因为yum是基于rpm包进行管理的 ,所以同样也支持了rpm包中的相关功能 。
选项 |
说明 |
install |
安装 |
update |
更新 |
update-to |
更新到某个版本 |
remove |
卸载 |
list |
列表 |
search |
查找 |
info |
显示关于软件包的详细信息 |
clean |
删除缓存数据 |
-y |
所有确认项默认默认选是 |
以下为具体使用:
1.显示所有已经安装和没有安装的包:yum list all 2.只显示已安装的包:yum list installed 3.只显示没有安装但可以安装的包: yum list available 4.列出可更新的包:yum list updates 5.模糊查询:yum search 关键字 ,比如yum search python 6.安装某软件包:yum install 包名 7.安装多个包: yum install 包名1 包名2 包名n 8.安装某个包: yum install -y 包名 , //期间有确认项自动选yes . 9.更新安装包: yum update 包名 10.卸载某软件包:yum remove 包名 11.查询包中的信息:yum info 包名