我需要了解 Linux 版本控制系统和发行版概念。版本的公开、稳定或最终条款是什么?
答案1
内核版本控制独立于发行版版本控制,除非发行版包含自己的补丁。这是通过在版本上添加额外的标识符来指示的,例如:
3.16.6-203
这3.16.6
是原始(未修改)内核的版本,并由-203
发行版附加以指示其修改的相对版本。
你没有必要深入理解这一点,只需了解 Linux 内核是一个独立的实体即可。发行版将其与用户层软件并且(在大多数情况下)所有内容都经过预编译,以便在特定的计算机体系结构上协同工作(当今最常见的是 X86-64;一些发行版称之为 AMD64——它们指的是完全相同的东西)。
大多数基本用户层软件实际上来自GNU,一个与 Linux 内核不同的组织,因此操作系统的正确通用名称通常被认为是“GNU/Linux”。
软件捆绑在一起存储库由发行版管理。当您安装软件时,它来自默认存储库(例如“稳定”),但您可以将系统配置为使用不同的存储库(例如“测试”)来默认访问各个事物的不同版本。您也许还可以指定一个版本,如果它不在默认存储库中,安装程序将检查其他版本的列表。
就版本控制本身而言,发行版有两种不同的类型。虽然个别软件总是在更新,但大多数发行版偶尔也会整体升级,例如从 Ubuntu 12.x 到 Ubuntu 13.x。这使他们能够做出彻底的改变,否则这些改变可能很难做到。然而,一些发行版反而使用滚动发布没有明显版本的模型,只有一个持续更新的版本。
总而言之,版本控制的概念可能适用于:
- Linux核心,一个独立的软件。
- 发行版本,通常有昵称(例如 Ubuntu 14.10:“Utopic Unicorn”,或 Fedora 20:“Heisenbug”)。
- 发行版中各个软件包的版本,通常分为不同的存储库。与内核一样,它们具有独立的源代码,发行版打包程序可能会对其进行轻微修改。
- 编译包所针对的“目标体系结构”(例如 X86-64)。这些也可以分为存储库。
完整包版本字符串的示例,它结合了以下几个内容:
foobar-4.11.3-4.fc20.x86_64
这是针对 Fedora .rpm 的,但其他发行版也使用类似的方案。Foobar
是软件包名称,4.11.3
是使用的源版本,-4
表示 Fedora 应用的补丁版本,f20
是编译该软件包的发行版版本, 是x86_64
编译该软件包的体系结构。
答案2
既然您提到您是 Linux 新手,我假设您的意思是您是 Linux 发行版新手。 Linux 是发行版的“唯一”内核。将 Debian、RedHat、Ubuntu 等称为 Linux 并不正确。发行版由 Linux 内核 + 围绕其提供更多功能的一系列程序组成。
那么以Debian为例:(很多发行版都是基于Debian的)
该stable
发行版包含最新正式发布的 Debian 发行版。这是 Debian 的生产版本,我们主要推荐使用它。
该testing
发行版包含尚未被接受到发行版中的软件包stable
,但它们已在等待队列中。使用此发行版的主要优点是它拥有更新版本的软件。
该unstable
发行版是 Debian 积极开发的地方。一般来说,这个发行版是由开发人员和那些喜欢生活在边缘的人运行的。在 Debian 中,该unstable
发行版称为 sid。