分享
 
 
 

RPM的使用

王朝other·作者佚名  2008-05-18
窄屏简体版  字體: |||超大  

RPM简述

RPM是Redhat

Package

Manager的缩写,是由RedHat公司开发的软件包安装和管理程序,同Windows平台上

的Uninstaller比较类似。使用RPM,用户可以自行安装和管理Linux上的应用程序和系统工具。

RPM可以让用户直接以binary方式安装软件包,并且可替用户查询是否已经安装了有关的库文件;在用RPM删

除程序时,它又会聪明地询问用户是否要删除有关的程序。如果使用RPM来升级软件,RPM会保留原先的配置

文件,这样用户就不用重新配置新的软件了。RPM保留一个数据库,这个数据库中包含了所有的软件包的资料,

通过这个数据库,用户可以进行软件包的查询。RPM虽然是为Linux而设计的,但是它已经移值到SunOS、

Solaris、AIX、Irix等其它UNIX系统上了。RPM遵循GPL版权协议,用户可以在符合GPL协议的条件下自由

使用及传播RPM。

使用RPM

RPM共有10种基本的模式:它们是安装、查询、验证、删除等。

安装模式:

rpm

–i

[安装选项]

查询模式:

rpm

–q

[查询选项]

验证模式:

rpm

–V

–verify

[验证选项]

删除模式:

rpm

–e

使用RPM的一般选项

一般选项可以用于所有的模式。

-v

显示信息

-h

用“#”显示完成的进度

--keep-temps

保留临时文件,临时文件通常位于/tmp/rpm-*,这个选项要用于debug。

--quiet

安静工作,只有当出现错误时才给出提示信息

--help

显示帮助

--version

显示当前使用的RPM版本

安装和升级的选项

使用RPM来安装的一般格式为:

rpm

–i

[安装选项]

使用RPM来升级的一般格式为:

rpm

–U

[安装选项]

比如,要安装一个新的软件包,它的名字为xosvies-1.6.3-5.i386.rpm,使用下面的命令就可以把它安装到系统上:

#

rpm

-i

xosvies-1.6.3-5.i386.rpm

升级同安装是一样的,只不过升级会把原来低版本的文件删除掉。RPM可以使用FTP安装,这时要指定FTP的完整

路径。使用FTP方式安装时,RPM会先下载所需的软件包,然后再安装。

--force

同--replacepkgs,--replacefiles,--oldpackage一样,当安装的软件版本已经安装在系统上,或者是系统

上现有的版本比要安装的版本高,系统就会发出警告。这时,用户如果坚持安装的话,可以用--force选项。

--nodeps

使用RPM安装前,RPM会检查该软件包的依赖关系,即正确运行该软件包所需的其它软件包是否已经安装。如果没有

安装的话,系统会给出警告。这时,用户如果要强行安装的话,可以使用这个选项。但是作者并不推荐这种做法,

因为这样安装的软件十有八九是不能运行的。

--test

不实际安装,只是检查并显示可能存在的冲突。

查询选项

查询的命令格式如下:

rpm

–q

[查询选项]

这里的选项包括两大类:软件包选项和信息选项。

软件包选项:

查询系统上是否已经安装这个软件包,软件包的名字是

-a

查询所有安装的软件包

--whatrequires

查询所有需要才能正常运行的软件包。

--whatprovides

查询所有能提供的软件包

-f

查询拥有的软件包,也就是说,是哪一个软件包安装的。

--requiredby

查询所有安装所需要的其它软件包。

-p

查询未安装的软件包。这个软件包可以指定为FTP路径,这时,RPM会下载它的头部信息并查询。

信息选项

-i

显示软件包的信息,包括名称、版本、描述信息。

-R

显示这个软件包所依赖的软件包。

同--requires。

--provides

显示这个软件包所提供的功能

-l

列出这个软件包内所包含的文件。

-s

显示这个软件包的状态,状态是指“normal”“not

installed”“replaced”

验证选项

验证的一般格式为:

rpm

–V|--verify

[验证选项]

验证会把软件包所安装的软件与原先数据库中存储的软件信息做一个比较。用户可以用RPM来验证已经安装的软件包,

RPM可以验证文件的大小,MD5校验码,文件权限,类型,属主等信息。对于特定软件的选项同查询的选项。

验证输出的格式是一个包括8个字符的字符串,这8个字符中每个字符都代表同数据库中信息所比较的结果。如是结果

是“.”,就代表没有问题。下面是相应字符的意义:

5

MD5校验错

D

设备文件错

U

用户名错

G

组名错

S

文件大小错

L

符号链接错

T

文件修改时间错

M

属性错(包括读写权限和文件类型)

删除选项

删除的一般格式为:

rpm

–e

注意:这里只能是软件名,而不是软件包。

--allmatches

删除所指定的所有版本的软件,如果有多个版本存在的话,一般会给出错误码信息。

--nodeps

如果要删除的软件包是别的软件所必需的,在删除时用户会得到警告。这时,如果确认要强行删除,可以使用

--nodeps这个选项。这样一来,相关的软件就不能运行了。

--test

不真正删除,只是测试。

RPM使用范例

软件安装

如果用户手头上有一个RPM软件包,可以使用命令:

#

rpm

–ivh

xanim-27064-3.i386.rpm

安装时出现的错误信息

1.该软件包已经安装

假如用户安装的软件包已经安装,再安装的话会出现下列的错误信息:

#

rpm

–ivh

xanim-27064-3.i386.rpm

foo

package

xanim-27064-3.i386.rpm

is

already

installed

error:

xanim-27064-3.i386.rpm

cannot

be

installed

如果用户一定要安装,可以使用:

#

rpm

–ivh

xanim-27064-3.i386.rpm

--force

2.软件包之间有冲突

假如用户要安装的软件包里的某些文件,先前已经有其它的软件包安装过,即各种软件包之间有冲突,则会

出现以下的错误信息:

#

rpm

–ihv

foo-1.0-1.i386.rpm

foo

/usr/bin/foo

confilicts

with

file

from

bar-1.0-1

error:

foo-1.0-1.i386.rpm

cannot

be

installed

3.缺少相关的文件

有时安装的RPM软件包需要其它的部件才能安装成功。这时安装时有下面的错误信息:

#

rpm

–ihv

bar-1.0-1.i386.rpm

failed

dependencies:

foo

is

needed

by

bar-1.0-1

如果用户要强行安装,可以使用命令:

#

rpm

–ivh

bar-1.0-1.i386.rpm

--nodeps

删除软件

要删除软件非常简单,只要执行下面的命令就行:

#

rpm

–e

xanim

这时,用户要注意使用的是软件的名称xanim,而不是软件包的名称xanim-27.64-3.i386.rpm。

如果要删除的软件是其它软件所需要的,用户会得到类似下面的错误信息:

#

rpm

–e

xanim

error:

xanim

is

needed

by

mtv-1.0-1

这表明如果用户删除了xanim,则mtv就不能运行了,因为xanim里的一些软件是mtv运行所需要的。

若用户一定要删除,可以使用下面的命令:

#

rpm

–e

xanim

--nodeps

升级软件

如果用户以前安装过xanim-27063-1.i386.rpm,现在又得到了xanim-27064-1.i386.rpm,则使用下面

的命令可以升级这个软件包:

#

rpm

–Uhv

xanim-27064-1.i386.rpm

实际上,-U参数是告诉RPM先删除原先的版本,再安装新的版本。所以不管以前是否安装过这个软件包,用户

都可以使用rpm

–Uhv命令来安装软件。

查询软件包

如果用户想要查询某个软件是属于哪个软件包安装的,可以使用命令:

#

rpm

–qf

xanim

xanim-27.64-3

如果用户得到一个软件包,却不知道它里面有哪些内容,可以使用命令:

#

rpm

–qpi

xanim-27064-3.i386.rpm

如果用户想知道它会在系统上安装哪些内容,可以使用命令:

#

rpm

–qpl

xanim-27064-3.i386.rpm

如果用户在Internet上遇到一个软件包,想要知道它里边的内容时,可以使用命令:

#

rpm

–qpl

ftp://ftp.redhat.com/redhat/RPMS/xanim-27064-3.i386.rom

较验

如果用户不小心删除了几个文件,却又不知道到底删除了哪些文件,可以使用下面的命令对系统进行校验:

#

rpm

–Va

i386.rpm与src.rpm的不同

在Internet上,用户经常会看到这样的目录:RPMS/和SRPMS/。目录RPMS/下面存放的就是一般的RPM软件包,

这些软件包是由软件的原代码编译成可执行文件,再包装成RPM软件包的。而SRPMS/目录下存放的都是以

.src.rpm结尾的文件,这些文件是由软件的源代码包装而成的,用户要安装这类RPM软件包,必须使用命令:

#

rpm

--recompile

vim-4.6-4.src.rpm

这个命令会把源代码解包并编译、安装它,如果用户使用命令:

#

rpm

--rebuild

vim-4.6-4.src.rpm

那么,在安装完成后,还会把编译生成的可执行文件重新包装成i386.rpm的RPM软件包。

GnoRPM的使用

GnoRPM是GNU组织开发的RPM软件包管理程序,它是RPM程序的前端程序,是在X

Window下运行的图形化的

RPM管理程序。只要用户熟悉了RPM的使用,那么也就会使用GnoRPM了,不过GnoRPM比RPM程序更好用!

GnoRPM的安装

BluePoint

Linux和TurboLinux内没有安装GnoRPM,红旗Linux与RedHat

Linux内自动安装的就有。

对于前两种用户要自己安装。在http://www.gnome.org下载gnorpm-0.8-5.i386.rpm。注意GnoRPM需要

rpm

3.0版本,如果是rpm

2.5

版本的话(TurboLinux

4.0是rpm

2.5),要先升级到3.0,BluePiont

Linux里的rpm就是3.0版本,用户可以直接安装。

#

rpm

–ihv

gnorpm-0.8-5.i386.rpm

然后,在shell提示符下输入gnorpm

就能运行gnorpm。

GnoRPM的使用

gnorpm的主窗口如下所示,它有安装、升级、删除、查询、验证、寻找等功能。

安装

点按“Install”后,出现安装的窗口,如下图示:

按“Add”,出现选择窗口:

这时,选择想要安装的软件包后,按“Add”按钮,回到安装的窗口,这时用户可以选择“Query”来查询

这个软件包,也可以选择“Install”来安装它。升级软件同安装软件类似。

删除软件

gnorpm把系统上的软件归为几个大类,如应用程序(Applications)、开发(Development)、文档

(Documentation)等。用户只要在相应类别中找到要删除的软件,然后再点按“Uninstall”按钮,

针对弹出对话框:

如果用户确认要删除的话,按“OK”就可以了。

寻找

用户在gnorpm主菜单上按“Find”后,会出现:

这时,只要选择适当的寻找标准,gnorpm提供的标准有:“contain

file”(包含文件),“are

in

the

group

”(在类别……里),“provide”(提供……功能),“require”(需要……),“conflict

with”

(同……冲突),“match

label”(标签为)。如上图示,在选择标准“match

label”,并在用户输入信息

“gedit”后,按“Find”,它会开始寻找用户需要的软件,在找到之后,用户可以查询它,可以删除它,

也可以验证它。

当然,上面提到的仅仅是一丁点参考而已,用户要在实际中不断探索才能提高。

李景超

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有