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的命令,详见作者主页。
领取专属 10元无门槛券
私享最新 技术干货