Linux进阶之路———— RPM 与 YUM 包管理

引言

rpm 是一种用于互联网下载的打包及安装工具,它包含在某些 Linux 发行版中,生成具有 .rpm 扩展名的文件。rpm 是 redhat package manager(RedHat 软件包管理器)的缩写,类似 Windows 下的 setup.exe 文件。这一文件格式虽然打上了 RedHat 的标志,但是理念是通用的。

Yum (全称:Yellow dog Updater Modified )是一个在 Fedora 和 RedHat 以及 CentOS 中的 Shell 前端软件包管理器。基于 rpm 包管理,能够从指定的服务器自动下载 rpm 包并安装,且可以自动处理依赖关系,一次安装所有依赖的软件包,无需繁琐的一次次下载、安装。

一、RPM包的管理

查询命令,查询已安装的 rpm 列表:

rpm -qa | grep  xx

 

1.1 rpm 包名基本格式

firefox-52.8.0-1.el6.centos.x86_64.rpm

名称:firefox

版本号:52.8.0-1

适用操作系统:el6.centos.x86_64,表示 centos 6.x 的64 位操作系统。如果是 i686 、i386 表示32位操作系统,noarch 表示通用。

1.2 rpm 包的其他查询指令

1、rpm -qa :查询所有安装的rpm 软件包

rpm -qa | more

rpm -qa | grep  xx

2、rpm  -q  xxx  :  查询软件包是否安装

3、rpm  -qi  xxx : 查询软件包信息

4、rpm  -ql  xxx  : 查询软件包中的文件安装到了哪里

5、rpm  -qf  文件全路径   : 查询文件所属的软件包

1.3 卸载 rpm 包

基本语法:

rpm  -e  xxx

案例:删除 firefox 软件包

注意,如果 rpm 包是独立的,即不被其他软件包所依赖,那么删除的过程中不会出现任何提示信息,如果将要被删除的软件包被其他软件包所依赖,那么仅仅使用 -e  参数是不够的,需要加上  --nodeps 强制删除,但一般不推荐强制删除。

rpm  -e  --nodeps  xxx 

1.4 安装 rpm 包

基本语法:

rpm  参数  xxx

可选参数:

i  : install  安装

v  : verbose 提示

h  : hash  进度条,Print 50 hash marks as the package archive is unpacked.  Use with -v |--verbose for a nicer display.

案例:找到 firefox 的rpm 包,进行安装。(在 安装 CentOS 的 iso 文件中,/media 目录下有对应的 rpm):

首先在虚拟机设置中按照如上图所示进行设置,如果不出意外,打开时基本都是设置好的,只有“已连接”复选框需要手动勾选。

然后虚拟机不需要重启,回到CentOS 中,cd 到 /media 目录,查看:

可以看到设置前后不同的变化。当出现 CentOS 文件夹之后,在其中找到对应的 rpm 文件:

找到 firefox 对应的 rpm 后将其拷贝出来(一般不在 iso 文件中操作安装)

然后执行安装操作:

至此,rpm 安装操作就完成了,这是一种比较原始的 rpm 安装操作,也是离线情况下如何进行 rpm 包安装的基本操作。

二、YUM 包的管理

在引言中也已经简单介绍,yum 是基于 rpm 的 Shell 前端软件包管理器,能够通过联网的方式自动从指定的服务器上下载 rpm 包并安装,而且可以自动处理依赖关系,一次性安装所有依赖的软件包。注意,yum 是通过网络进行操作的,因此必须联网。

查询 yum 服务器是否有需要安装的软件:

yum list  | grep  xxx

yum  search xxx 

下载安装指定的 yum  包:

yum  install  xxx

当提示已安装后,通过 rpm 查询 firefox 包,就可以看到列表中出现了已安装的软件包,说明安装全都自动完成了。

综上,就是关于在 Linux 环境下如何安装和查询 RPM 软件包的相关知识总结,欢迎文末留言。

发布了191 篇原创文章 · 获赞 280 · 访问量 52万+

猜你喜欢

转载自blog.csdn.net/u014745069/article/details/102020471