RPM 的使用

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显示软件包的信息,包括名称、版本、描述信息 。

推荐阅读