Назад | Перейти на главную страницу

Управление версиями ядра Linux: Debian Sid против Ubuntu Precise

Я установил две машины:

На одном компьютере я установил бета-версию Ubuntu Precise 12.04 и обновил дистрибутив до последних пакетов.

На другом компьютере я установил Debian Sid Unstable и обновил его до последних пакетов.

На машине с Ubuntu uname -a читает:

Linux 3.2.0-20-generic # 32-Ubuntu SMP Чт, 22 марта 02:22:46 UTC 2012 x86_64 x86_64 x86_64 GNU / Linux

На машине Debian uname -a читает:

Linux 3.2.0-2-amd64 # 1 SMP среда 28 марта 13:28:04 UTC 2012 x86_64 GNU / Linux

У меня вопрос по версиям ядра:

Ubuntu: 3.2.0-20-generic
Debian: 3.2.0-2-amd64

Версия 3.2 Linux была выпущена:

linux-3.2.tar.gz         05-Jan-2012 00:40   94M

С тех пор было выпущено 13 точечных выпусков, 3.2.1 .. 3.2.13 с kernel.org и 3.3.

Мой вопрос касается истории исходного дерева двух ядер на двух моих машинах:

От какого выпуска официального ядра kernel.org произошли эти две версии ядра?

Как связаны исходные коды ядра Debian Sid и ядра Ubuntu Precise?

Присутствуют ли изменения, сделанные из исходных кодов kernel.org для создания 3.2.0-2-amd64, также в 3.2.0-20-generic в Ubuntu?

Является ли ядро ​​Debian Sid "апстримом" ядра Ubuntu?

Что означает четвертый номер версии (после первого тире) «2» в случае Debian и «20» в случае Ubuntu - и как он соотносится с приведенным выше?

Ядро Ubuntu не то же самое, что и исходное ядро, хотя номера версий могут быть похожими. Вы можете прочитать о ядре Ubuntu в Ubuntu вики который отвечает на ваш первый и четвертый вопрос:

Beta-2 включает ядро ​​Ubuntu 3.2.0-20.33, основанное на стабильном ядре Linux v3.2.12.

Часто задаваемые вопросы о ядре Ubuntu описывает нумерацию версий следующим образом:

Учитывая версию вроде 2.6.35-6.9-generic это можно разбить на четыре части, как показано ниже:

<base kernel version>-<ABI number>.<upload number>-<flavour> Базовая версия ядра представляет собой основную версию, на которой основано ядро ​​Ubuntu. Номер ABI представляет собой значительные изменения в двоичном интерфейсе приложения ядра. Номер загрузки - это монотонно увеличивающийся счетчик для каждой загрузки этой базовой версии. Вкус указывает, какой вариант конфигурации ядра это

Вы также можете проверить Сопоставление версий ядра Ubuntu с Mainline для получения дополнительной информации о версиях ядра ubuntu и исходных версиях ядра.

Ваши вопросы

From which release of official kernel.org kernel are those two versions of the kernel derived?
Версия ядра 3.2.0.

What is the relationship of the sources of the Debian Sid kernel to the Ubuntu Precise one?
Это обе версии Debian (без изменений в Ubuntu), пакет Debian (3.2.0-2) это пересмотр 2, пакет Ubuntu (3.2.0-20) это пересмотр 20.

Are the changes made from the kernel.org sources to produce 3.2.0-2-amd64 also present in 3.2.0-20-generic on Ubuntu?
Я не уверен, так как они (афайк) разные пакеты (общий или конкретный amd64).

Is the Debian Sid kernel "upstream" of the Ubuntu one?
да. Debian является апстримом Ubuntu. Изменения, внесенные Ubuntu (обозначенные окончанием исправлений -ubuntuX где X является ревизией) обычно объединяются обратно в Debian

Номера редакций

tl; dr версия: Число после хайпена - это номер ревизии, присвоенный сопровождающим пакета после новых сборок / исправлений.

-

Для Debian число после дефиса - это Debian Revision Number [источник]
Для Ubuntu число после обмана - это Debian Revision Number и число после -ubuntu (если он существует) является Ubuntu Revision Number [источник-2]

Обычно число после дефиса - это номер версии, которую сопровождающий пакетов дает.

К пакетам от сопровождающих часто применяются различные виды исправлений (например, для исправления несовместимости; исправлений безопасности; незначительных улучшений; различных флагов сборки и т. Д.); вот почему в вашем примере версия ядра 3.2.0 имеет несколько ревизий.

Тот факт, что один из них выше другого, не обязательно означает, что он новее, лучше или содержит все те же исправления. Это связано с тем, что они могут быть разными сопровождающими пакетов, которые следят за пакетом в каждом дистрибутиве, и они могут (например) исправлять менее часто (что означает более низкий номер версии), но все же включать [некоторые или] все одинаковые исправления .

Заметка: Ubuntu основан на Debian, поэтому чаще всего в Ubuntu есть все исправления от Debian (и часто из более новой версии debian, такой как тестирование)

Отношения пакетов

Создана часть программного обеспечения (например, ядро). У этого есть версия (3.2.0). Сопровождающий пакета (Дэйв) для дистрибутива (Debian). Он берет программу и упаковывает ее в формат (.deb) в соответствии с директивами дистрибутива. Это версия 3.2.0-1 из ядро, иначе ядро-3.2.0-1.

Дэйв не совсем следовал рекомендациям для дистрибутива, для которого он упаковывает (Debian) и поэтому необходимо внести некоторые изменения в пакет. Он делает это и отправляет свою обновленную версию. Это версия 3.2.0-2 ядра, он же ядро-3.2.0-2.

Тем временем ядро 3.2.1, 3.2.2 полностью до 3.2.25 были выпущены. Пакет, над которым работает Дэйв, все еще основан на 3.2.0. Он приступит к выпуску 3.2.25 скоро, но еще нет.

В то же время другой сопровождающий пакета (Гарри) нужен такой же пакет для его дистрибутива (Ubuntu). поскольку Debian и Ubuntu похожи; вместо того, чтобы делать все с нуля, он просто берет копию Дэйвядро 3.2.0-2 и отправляет его. Гарри передает это Ubuntu так как 3.2.0-2.

Затем Гарри хочет внести некоторые изменения в работу Дэйва. Он вносит изменения и выпускает обновленный пакет. Это версия 3.2.0-2-ubuntu1

В этом примере:
Последняя версия kernel является 3.2.25
Последняя версия kernel пакет для Debian 3.2.0-2
Последняя версия kernel пакет для Ubuntu 3.2.0-2-ubuntu1