深入讲解RPM包安装/升级/查询/卸载方法

时间:2022-01-16 21:06:37

新的一年到来,学习Linux的人逐渐增多,学习Linux,你可能会遇到RPM安装/升级/查询/卸载问题,这里将介绍RPM包安装/升级/查询/卸载的解决方法,在这里拿出来和大家分享一下。
安装,升级和卸载应用软件是影响用户对操作系统评价的决定性因素之一。对于日渐流行的GNU/Linux操作系统,拥有简洁强大的软件包管理机制功不可没。本文从基本的rpm/dpkg命令行出发,以RHEL和UBUNTU为例,介绍典型Linux系统中应用软件的管理和使用。

在GNU/Linux(以下简称Linux)操作系统中,RPM和DPKG为最常见的两类软件包管理工具,他们分别应用于基于RPM软件包的Linux发行版本和DEB软件包的Linux发行版本。软件包管理工具的作用是提供在操作系统中安装,升级,卸载需要的软件的方法,并提供对系统中所有软件状态信息的查询。

RPM全称为RedhatPackageManager,最早由RedHat公司制定实施,随后被GNU开源操作系统接受并成为很多Linux系统(RHEL)的既定软件标准。

RPM包安装/升级/查询/卸载

一个RPM包包含了已压缩的软件文件集以及该软件的内容信息(在头文件中保存),通常表现为以.rpm扩展名结尾的文件,例如package.rpm。对其操作,需要使用rpm命令。下面介绍rpm工具的参数和使用方法,并以IBMLotusNotes在RHEL5.2安装为例做具体说明。

RPM命令常用参数

RPM的常规使用方法为rpm-?package.rpm,其中-?为操作参数(更多信息,请查阅帮助$manrpm):

-q在系统中查询软件或查询指定rpm包的内容信息
-i在系统中安装软件
-U在系统中升级软件
-e在系统中卸载软件
-h用#(hash)符显示rpm安装过程
-v详述安装过程
-p表明对RPM包进行查询,通常和其它参数同时使用,如:
-qlp查询某个RPM包中的所有文件列表
-qip查询某个RPM包的内容信息

RPM命令参数使用方法

以上参数有些需要组合使用,比如说rpm-hpackage.rpm是没有意义的,但rpm-ihpackage.rpm即表示安装package并用#符显示安装进度。

安装RPM包
#rpm-ivhpackage.rpm

升级RPM包命令
#rpm-Uvhpackage.rpm

卸载RPM包命令
#rpm-evpackage

查询RPM包中包含的文件列表命令
#rpm-qlppackage

查询RPM包中包含的文件列表命令
#rpm-qlppackage

查询RPM包中包含的内容信息命令
#rpm-qippackage

查询系统中所有已安装RPM包
#rpm-qa

RPM包管理示例

以下步骤描述了一个普通用户安装IBMLotusNotesV85(以下简称Notes)的典型操作过程。Notes的RPM包名为ibm_lotus_notes-8.5.i586.rpm。

首先查询是否该软件是否已经在系统中存在      
#rpm-qa|grepibm_lotus_notes

如果返回信息为空那么说明该软件还未被安装。

查询Notes软件包内容: 
 

复制代码

代码如下:


#rpm-qipibm_lotus_notes-8.5.i586.rpm 
Name:ibm_lotus_notesRelocations:/opt/ibm/lotus/notes 
Version:8.5Vendor:IBM 
Release:20081211.1925BuildDate:Sat13Dec200809:38:55AMCST 
InstallDate:(notinstalled)BuildHost:dithers.notesdev.ibm.com 
Group:Applications/Office 
SourceRPM:ibm_lotus_notes-8.5-20081211.1925.src.rpm 
Size:603779427License:Commercial 
Signature:DSA/SHA1,Sat13Dec200809:43:02AMCST,KeyID314c8c6534f9ae75 
Summary:IBMLotusNotes 
Description: 
IBMLotusNotessoftwareprovidesarobust... 

 

安装Notes:      
#rpm-ivhibm_lotus_notes-8.5.i586.rpm

返回信息:

 

复制代码

代码如下:


Preparing...###########################################[100%] 
1:ibm_lotus_notes###########################################[100%]

 

升级Notes:
若今后需要基于该版本升级至更高版本的Notes(缝.0-ibm_lotus_notes-9.0.i586.rpm),则使用-U参数:

#rpm-Uvhibm_lotus_notes-8.5.i586.rpm

在该步骤中如果使用-i则系统通常会报文件冲突错误,无法正常安装。

卸载Notes
注意卸载软件使用软件名称,而不是包文件名:

#rpm-evibm_lotus_notes 以上就是RPM包安装/升级/查询/卸载。