Linux基础命令九——RPM

1.RPM Package Manager

·由 Red Hat 公司提出,被众多 Linux 发行版所采用

·建立统一的数据库文件,详细记录软件包安装、卸载等变化信息,能够自动分析软件包依赖关系

2.RPM软件包

软件素材参考:http://rpmfind.net

软件包一般命名格式:

3.rpm命令的主要功能

· 查询、验证RPM软件包信息

· 安装、升级、卸载RPM软件包

· 维护RPM数据库信息

4.命令介绍

(1)查询、验证RPM软件包信息

a.查询已安装的 RPM 软件信息

命令格式:rpm -q[子选项] [软件名]

不带子选项的“-q”选项可用于查询已知名称的软件包是否已经安装,需要使用准确的软件名作为参数(可以有多个)。

子选项:结合不同的子选项 完成不同查询

-qa:查看系统中已安装的所有RPM软件包列表

-qi:查看指定软件的详细信息

-ql:查询指定软件包所安装的目录、文件列表

-qc:仅显示指定软件包安装的配置文件

-qd:仅显示指定软件包安装的文档文件

-qf:查看指定的文件或目录是由哪个软件包所安装的

示例:

注:使用r pm 命令只能查询通过 RPM方式安装的软件包信息,用其他途径安装到系统中的软件包,rpm 命令将无法获取相关信息

b.查询未安装的 RPM 包文件

命令格式:rpm - qp[子选项] RPM包文件

子选项:结合不同的子选项 完成不同查询

-qpi:通过.rpm包文件查看该软件的详细信息

-qpl:查看.rpm安装包内所包含的目录、文件列表

-qpc:查看.rpm安装包内包含的配置文件列表

-qpd:查看.rpm安装包内包含的文档文件列表

示例:

(2)安装、升级、卸载 RPM 软件包

命令格式:rpm [选项] RPM包文件

选项:不同选项适用于不同情况

-i:安装一个新的 rpm 软件包

-e:卸载指定名称的软件

-h:在安装或升级软件包的过程中,以“#”号显示安装进度

-v:显示软件安装过程中的详细信息

-U:升级某个 rpm 软件,若原本未装,则进行安装

-F:更新某个 rpm 软件,若原本未装,则放弃安装

辅助选项:

--force:强制安装所指定的rpm软件包

--nodeps:安装、升级或卸载软件时,忽略依赖关系

示例:

注:示例中/media/cdrom是光盘挂载位置(下同),挂载命令可点击Linux基础命令八——挂载、卸载文件系统查看

(3)维护RPM数据库信息

a.重建RPM数据库

当RPM数据库发生损坏(误删文件、非法关机、病毒破坏等导致),且Linux系统无法自动完成修复是,将导致无法使用rpm命令正常地安装、卸载及查询软件包。这是可以使用--rebuilddb或--initdb对RPM数据库进行重建

b.导入验证公钥

在Linux/UNIX应用领域,相当一部分软件厂商会对发布的软件包进行数字签名,以确保软件的完整性、合法性。RHEL6系统的DVD光盘中默认已经提供了用于数字签名验证的公钥文件,即位于光盘跟目录下的RPM-GPG-KEY-redhat-release文件,在没有导入公钥文件之前,安装THEL6光盘中的一部分RPM软件包时,可能会出现一些警告信息(一般不影响正常使用)。向RPM数据库中导入公钥文件时,需要用到“--import”选项。

(4)解决软件包依赖关系

安装有依赖关系的多个软件时

·被依赖的软件包需要先安装

·可同时指定多个 .rpm 包文件进行安装

卸载有依赖关系的多个软件时

·依赖其他程序的软件包需要先卸载

·可同时指定多个软件名进行卸载

忽略依赖关系

·结合“--nodeps”选项,但可能导致软件异常

Linux基础命令 一

Linux基础命令 二

Linux基础命令三

Linux基础命令六——vi编辑器的使用

更多关于Linux的命令,详见作者主页。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20181104A1GX8D00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券