包里有什么?

王朝other·作者佚名  2006-01-08
宽屏版  字体: |||超大  

包里有什么?

由于包管理软件能够做所有我们要求的不可思议的事情,你可能会认为在包里带有一个微小的电脑人。可是实际上并没有那么神奇。下面是对RPM包中所含的重要组成部分快速的概览。

RPM 包标签

每一个RPM包都有一组特别的信息用来唯一地标识它。我们称这样的信息为[包标签]。

下面有两个包标签例子:

l nls-1.0-1

l perl-5.001m-4

这些标签看起来好象没有什么共同点,但实际上它们都遵循RPM包标签的命名习惯。

每个包标签都包含三个不同的部分,让我们一一解读:

第一部分:软件名称

每个包标签都从软件名称开始。这个名字或者源自于被打包的应用的名称,或者是对打包进来的一组相关程序的描述。上面例子所列包的软件名称是:nls 和 perl。正如你看到的,软件名称与包标签中其他部分用一条短横(-)隔开。

第二部分:软件的版本

包标签中紧接着的是被打包软件的版本标识。如果是将许多相关程序放入包中,那么这个标识可能是一个自由选择的数字。然而,如果包里包含有一个主要的应用,那么软件版本就直接来自于这个应用的开发者(所定义的版本)。实际的版本规范是很复杂的,从上面所举的例子也可以看到。上面例子中版本标识分别是:1.0 和 5.001m。版本标识与报标签剩余部分之间用一条短横(-)隔开。

第三部分:包发布号

这是包标签里最含混的一部分。它是由包的建立者选择的。它反映了同一版本软件被重复打包发布的次数。通常在前一个包发行一段时间后有新的BUG被发现时会重新打包。传统上包的发布号从1开始。上面例子中包发布号分别是:1 和 4。

包标签和包文件名:相似但区别明显

包标签是由RPM程序内部使用的。例如,当你要求RPM程序列出所有已经安装的包时,将会得到包标签列表。当一个包文件被创建时,包文件名包含有包标签。这并不是技术上的要求,但是这样做使对一些事情的跟踪更容易。

然而,包文件可能被重命名,但是RPM程序丝毫不会被新文件名搞糊涂。那是因为包标签是包含在包文件内部的。如果需要对包文件内部有一个技术上清楚的观察,可以参考附录A。

一般包信息

包里自然包含有一些概要的信息。这些信息都是:

l 包被建立的日期和时间

l 包内容的描述

l 包中文件大小的总和

l 允许与相似包成为一个组的信息

l 一个数字签名用以校验包的正确性和完整性

包中每个文件的信息

每个包中也有每个文件的信息。这些信息包含:

l 文件名和被安装的路径

l 每个文件的权限

l 每个文件的所有者和所属组

l 每个文件的MD5总和检测

l 文件的内容

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有