1.RPM概述
1.1 RPM Package Manager
1.2 RPM软件包
软件素材参考:http://www.rpm.org
一般命名格式:
2.使用RPM软件包管理命令——rpm
2.1 rpm命令的格式
使用rpm命令能够实现几乎所有对RPM软件包的管理功能,执行“man rpm”命令可以获得关于rmp命令的详细帮助信息,如下:
从rpm命令的手册页信息中可以看出,rpm命令有好多的命令选项,结合这些选项主要可以实现以下三类功能。
下面将分别对上述RPM管理功能中的常见操作进行说明。
2.2 查询RPM软件包信息
使用rpm命令的查询功能可以查看某个软件包是否已经安装,软件包的用途以及软件包的复制到系统中的文件等相关信息,以便更好地管理Linux操作系统中的应用程序。
(1)查询已安装的 RPM 软件信息
rpm -q[子选项] [软件名]
直接执行“rpm –qa”命令将列出当前操作系统中以RPM方式安装的所有软件包清单,如下:
可以结合管道符和“wc -l”命令,可以统计系统中已安装的RPM软件的个数,如下:
当需要查询某个软件包是否已经安装时,可以直接使用软件名称作为查询参数,如下:
如果不知道准确的软件包名称,还可以对全部查询结果进行过滤,如下:
如果想知道已安装的某个软件的用途,可以使用“rpm –qi 软件名”,如下:
当需要查看某个软件包安装的目录和文件清单时,可以使用“-ql”选项,如下:
当需要知道系统中的某一个文件是由哪一个软件生成的时候,可以使用“-qf”,如下:
注意:使用rpm 命令只能查询通过 RPM方式安装的软件包信息用,其他途径安装到系统中的软件包,rpm 命令将无法获取相关信息
(2)查询未安装的 RPM 软件包文件中信息
使用“-qp”选项时,必须以RPM软件包文件的路径作为参数(可以有多个),而不是软件包名称。
若想在安装一个软件之前提前了解该软件的用途,可执行如下操作:
如希望进一步了解该软件中包含哪些文件(安装后将复制到系统中),可执行以下操作:
2.3安装、升级、卸载RPM软件包
(1)安装、升级软件包
如果要升级只需将“-i”换成“-U”即可
(2)卸载软件包
2.4维护RPM数据库
(1)重建RPM数据库
当RPM数据库发生损坏,且Linux操作系统无法自动完成修复时,将导致无法使用rpm命令正常地安装、卸载及查询软件包。这时可以使用rpm命令的“--rebuilddb”或“--initdb”功能对RPM数据库进行重建,具体操作如下:
(2)导入公钥验证
在Linux/Unix应用领域,相当一部分软件厂商会对发布的软件包进行数字签名,以确保软件的完整性、合法性。对于用户来说,可以利用软件官方提供的公钥文件,自动对下载的软件包进行验证,如果在安装软件时出现验证失败的提示,则表示该软件包可能已经被非法篡改。
向RPM数据库中导入公钥文件时,需要用到“--import”选项。例如,执行以下操作可以把光盘目录中的RPM-GPG-KEY-CentOS-7公钥文件导入RPM数据库中。