Linux 发行版本质量最重要的决定因素是软件包管理系统和其支持社区的持久性。随着我们花更多的时间在 Linux 上,会渐渐发现它的软件园地是非常动态的。软件不断变化,大多数一 线 Linux 发行版每隔六个月发布一个新版本,并且许多独立的程序每天都会更新。为了能和很多软件保持联系,我们就需要一些好工具来进行软件包管理。
软件包管理是指系统中一种安装和维护软件的方法。如今,通过从Linux发行版中安装的软件包,已经能够满足需足许多人所需要的软件。不同的 Linux 发行版使用不同的打包系统,一般而言,大多数发行版分别属于两大包 管理技术阵营:Debian 的 “.deb”,和红帽的”.rpm”。Linux 系统中几乎所有的软件都可以在互联网上找到。其中大多数软件由 发行商以包文件的形式提供,剩下的则以源码形式存在,可以手动安装。
在包管理系统中软件的基本单元是包文件。包文件是一个构成软件包的文件压缩集合。一个软件包可能由大量程序以及支持这些程序的数据文件组成。除了安装文件之外,软件包文件也包括关于这个包的元数据,如软件包及其内容的文本说明。另外,许多软件包还包括预安装和安装后脚本,这些脚本用来在软件安装之前和之后执行配置任务。
因软件开发生命周期不同阶段的需要,一个系统发行版可能维护着几个不同的资源库。例 如,通常会有一个 “测试” 资源库,其中包含刚刚建立的软件包,它们想要勇敢的用户来使用, 在这些软件包正式发布之前,让用户查找错误。系统发行版经常会有一个 “开发” 资源库,这 个资源库中保存着注定要包含到下一个主要版本中的半成品软件包。
这样就可以从资源库中安装一个软件包,再通过软件包来安装文件、卸载文件;也可以从资源库来更新软件包,接着便通过软件包文件来升级软件。