RPM 简介
RPM可以让用户直接以二进制方式安装软件包,并且可帮助用户查询是否已经安了有关的库文件。在用 RPM 删除程序时,它会询问用户是否要删除有关的程序。如果使用 RPM 来升级软件,RPM会保留原先的配置文件,这样用户就不用重新配置新的软件了。RPM 保留了一个数据库,这个数据库中包含了所有的软件包的资料,通过这个数据库,用户可以进行软件包的查询。安装简单,而卸载时也可以将软件安装在多处目录中的文件删除干净,因此推荐初学者尽可能使用 RPM 形式的软件包。RPM 虽然是为Linux 而设计的,但是它已经移植到 Solaris,AIX 和 Irix 等其他 UNIX 操作系统上了。RPM 遵循 GPL 版权协议,用户可以在符合 GPL 协议的条件下自由使用及传播 RPM。
RPM 设计的目的如下。
(1)方便的升级功能:可对单个软件包进行升级,保留用户原先的配置。
(2)强大的查询功能:可以针对整个软件包的数据或是某个特定的文件进行查询,也可以轻松地查出某个文件是属于哪个软件包或从哪里来的。
(3)系统校验:不小心删除了某个重要文件,但不知道是哪个软件包需要此文件时,可以使用 RPM 查询已经安装的软件包中少了哪些文件,是否需要重新安装,并且可以检验出安装的软件包是否已经被别人修改过,软件包可以使用以下三种命名方式。
1.典型的命名格式(常用)
格式为:
软件名-版本号-释出号.体系号.rpm
体系号指的是执行程序适用的处理器体系,如:
• i386 体系 适用于任何 Intel 80386 以上 的 xB6 架构(IA32)的计算机。
• i686 体系 适用于任何 Intel 80686(奔腾 Pro 以上)的 x86 架构的计算机。i686软件包的程序通常针对 CPU 进行了优化。
• x86_64 体系适用 64 位机。
• ppc体系适用于 PowerPC 或 Apple Power Macintosh。
• noarch 没有架构要求。指这个软件包与硬件架构无关,可以通用。有些脚本(比如 Shell 脚本)被打包进独立于架构(architecture-independent)的 RPM包,就是 noarch 包。
如果体系号为 src 时,表明为源代码包,否则为执行程序包。如 xyz-5.6.3-7.i386.rpm
为执行程序包,软件名为 xyz,主版本号为 5,次版本号为 6,修订版本号为3,释出号(发布号)为 7,适用体系为 i386,rpm 为扩展名。而 xyz-5.6.3-7.sre.rpm 则为源代码包。
在 Internet 上,用户经常会看到这样的目录:RPMS/和 SRPMS/。目录 RPMS/下面存放的就是一般的 RPM 软件包,这些软件包是由软件的源代码编译成的可执行文件,再包装成 RPM 软件包。而 SRPMS/目录下存放的都是以.src.rpm 结尾的文件,这些文件是由软件的源代码包装成的。
2. URL 方式的命名格式(较常用)
(1) FTP 方式的命名格式
ftp://[用户名[:密码]@ ]主机[:端口]/包文件
[]括住的内容表示可选。主机可以是主机名,也可是 IP 地址。包文件可含目录信息。如未指定用户名,则 RPM 采用匿名方式传输数据(用户名为 anonymous)。如未指定密码,则 RPM 会根据实际情况提示用户输人密码。如未指定端口,则 RPM 使用默认端口(一般为 21)。
如 ftp://ftp. xxx. com/yyy. rpm(使用匿名传输,主机 ftp. xxx. com,包文件 yxy.rpm)。
如 ftp://11.22.33.44:1100/pub/yyy. rpm(匿名 FTP 传输,主机 IP 为 11.22.33.44,使用 1100 端口,包文件在/pub 目录下)。
用户要安装这类 RPM 软件包,必须使用如下命令:
#rpm -ivh ftp://ftp.xxx.com/yyy.rpm
#rpm -ivh ftp://11.22.33.44:1100/pub/yyy.rpm
(2)HTTP 方式的命名格式
http://主机[:端口]/包文件
[ ]括住的内容可选。主机可以是主机名,也可是 IP 地址。包文件可含目录信息。如未指定端口,则 RPM 默认使用 80 端口。
如http://www.xxx.com/yyy.rpm(用 HTTP 获取 www.xxx. com 主机上的yyy. rpm 文件);
又如 http://www.xxx.com:8080/pub/yyy.rpm(用 HTTP 获取 www.xxx.com主机上/pub 目录下的 yyy. rpm 文件,使用端口 8080)。
用户要安装这类 RPM 软件包,必须使用命令:
#rpm -ivh http://www.xxx.com/yyy.rpm
#rpm -ivh http://www.xxx.com:8080/pub/yyy.rpm
3.其他格式(很少使用)
命名格式:任意
如将 xyz-5.6-7.i386.rpm 改名为 xyz.txt,用 RPM 安装也会安装成功,其根本原因是 RPM 判定一个文件是否是 RPM 格式,不是看名字,而是看内容,看其是否符合特定的格式。