[Comm] update-kernel не_очень_удался
Sergey Vlasov
vsu на altlinux.ru
Вт Окт 5 19:50:26 UTC 2010
On Tue, Oct 05, 2010 at 10:43:49PM +0400, Sergey wrote:
> On Tuesday 05 October 2010, Дмитрий Кулик wrote:
>
> > Так ясней ?
>
> Нет. Я этот конфиг на память и так помню, можно было и не копировать.
> В секции Hold нет kernel-image. Совпадение есть только в Allow-Duplicated.
Да, но как раз это и приводит к тому, что пакеты ядра и модулей не
обновляются автоматически - попадание в Allow-Duplicated приводит к
тому, что apt считает пакеты, отличающиеся номерами version-release,
не разными версиями одного и того же пакета, а совершенно разными
пакетами, в результате с точки зрения apt обновлять в этой ситуации
просто нечего.
В Debian/Ubuntu проблема обновления ядра решается, насколько я понял,
следующим образом:
1) Производится отслеживание изменений ABI ядра - если изменения в
новой сборке ядра не меняют интерфейсы, доступные для модулей,
пакет с новой сборкой ядра просто заменяет предыдущий. Такое
решение многим не нравится, поскольку обновление с заменой пакета
не оставляет возможности в случае возникновения проблем быстро
вернуться к предыдущей сборке; кроме того, вывод команды uname -r
не даёт полной информации об используемом ядре (туда попадает
только первая часть номера сборки, меняющаяся при изменении ABI).
С другой стороны, если обновление ядра не трогает ABI, при таком
способе можно не пересобирать все пакеты с дополнительными
модулями.
2) В случае, когда ABI для модулей ядра меняется, пакет с новой
сборкой ядра получает новое имя, и не заменяет предыдущий, а
устанавливается рядом. Однако сам по себе такой пакет не
установится автоматически при обновлении через apt (как и в случае
использования Allow-Duplicated в ALT). Чтобы обновление всё-таки
происходило автоматически, существуют так называемые метапакеты -
пустые пакеты с зависимостью на самый свежий в данный момент
настоящий пакет ядра; обновление такого метапакета происходит
автоматически, обеспечивая и установку нового пакета ядра.
3) Пакеты с дополнительными модулями ядра обновляются похожим
образом: в случае, если обновляется только пакет с модулями без
изменения самого ядра, имя реального пакета не меняется, и он
обновляется с заменой предыдущей сборки; в случае обновления ядра
со сменой ABI обновление модуля (с точки зрения apt - установка
нового пакета, не имеющего отношения к предыдущей сборке модуля)
обеспечивается через обновление соответствующего метапакета.
В ALT теоретически тоже можно реализовать схему обновления пакетов
ядра через метапакеты с соответствующими зависимостями, но пока этим
никто не озаботился.
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя : отсутствует
Тип : application/pgp-signature
Размер : 198 байтов
Описание: Digital signature
Url : <http://lists.altlinux.org/pipermail/community/attachments/20101005/f3c4f714/attachment-0001.bin>
Подробная информация о списке рассылки community