Linux命令之rpm

RPM(Red Hat Package Manager)是Red Hat公司开发的套件管理程序,除了可以用来安装套件之外,还可以进行升级,查询,卸载以及验证,通过这些功能,我们可以更方便地管理系统套件,也可以利用RPM的原理来“生成自己的RPM文件”。

RPM文件的格式为:xxxxxxxx.rpm

RPM文件的意义解释:以httpd-2.4.6-90.el7.x86_64.rpm为例

httpd:软件名称。

2.4.6:版本信息,其中:2为主版本,4为此版本,6为修订版本。

90:发布版本次数。

el7:操作硬件平台。

x86_64:是一种计算机体系结构,是 x86 的 64 位扩展版本。

rpm:软件名称后缀。

rpm常用安装参数

参数

说明

-i

insall

-v

查看更详细的安装信息

-h

以安装信息列显示安装进度

如果在安装的过程中发现问题,或者已经知道会发生的问题,而还是执意要安装该组件,可以使用强制安装参数进行安装(很少使用)。

rpm强制安装参数

参数

说明

--nodeps

不去检查rpm组件的依赖性,强制安装rpm组件。该安装方式可能导致组件无法正常使用

--force

重新覆盖安装已经安装过的rpm组件

如果rpm组件已经安装在服务器上,未来使用rpm对rpm组件进行升级时,可以使用-Uvh或-Fvh来进行升级,区别如下(很少使用):

rpm升级与更新

参数

说明

-Uvh

后面接的组件若没有进行安装过,则系统直接安装;若后面接的组件已经安装过旧版本,则系统自动更新至新版本

-Fvh

后面接的组件若没有进行安装过,则该组件不会安装;即只有Linux系统已经安装的组件会被升级

rpm在进行查询时,查询的地方是在/var/lib/rpm目录下的数据库文件,如果要查询文件内的信息,可以使用如下方式进行。

Linux命令(13)之rpm_centos

rpm常用查询参数

参数

说明

-q

查询后面接的组件名称是否已经安装

-qa

列出所有已安装在本机上的组件名称

-qi

列出该组件的详细信息

-ql

列出该组件所有的文件与目录

-qc

列出该组件的所有配置文件(/etc目录下的文件名称)

-qd

列出该组件的所有帮助文件

-qR

列出与该组件有关的依赖组件所含的文件

-qf

接文件名称,找出该文件属于哪一个已安装的组件

-qpR

找出该组件需要的需求文件

 实例:

1.找出RHEL上是否已安装了httpd组件

Linux命令(13)之rpm_centos_02

2.列出安装在RHEL上的所有组件名称

 3.列出httpd组件的详细信息

Linux命令(13)之rpm_运维_03

4.列出httpd组件所有的文件与目录

Linux命令(13)之rpm_centos_04

 5.列出httpd组件的所有配置文件

Linux命令(13)之rpm_文件名_05

6.列出httpd组件的所有帮助文件

Linux命令(13)之rpm_配置文件_06

 7.列出httpd组件所依赖组件其所含的文件

Linux命令(13)之rpm_文件名_07

 8.找出httpd.conf文件属于哪一个已安装的组件

Linux命令(13)之rpm_运维_08

 9.找出httpd-2.4.6-90.el7.x86_64.rpm文件的需求文件

Linux命令(13)之rpm_文件名_09