[d-kernel] Опять грабли с новой схемой сборки
Michael Shigorin
mike at osdn.org.ua
Wed Aug 13 17:23:46 MSD 2003
On Wed, Aug 13, 2003 at 04:25:00PM +0400, Anton Farygin wrote:
> >>Как пользователь должен обновлять пакеты с ядрами?
> >Возможно, для этого стоит сделать отдельную тулзень, которая
> >будет иметь достаточно специфический интеллект.
> Нет. Это не выход.
Я ж написал "возможно". Не помню всех нюансов (и вообще сейчас
меньше всего хочется думать о работе вообще и компьютерах в
частности), но
> >На статических зависимостях, которые не умеют "оглядываться"
> > -- не вижу, как это делается. Будь они жесткими или
> Да.
(так чего споришь? :)
> >PS: запихивать все опять в один мешок -- фу. Лучше захакай эту
> >^&*(^(&^. :(
> Чем тебе не нравится kernel-complete ? Да, это хак.
Это хак, который кривее той цели, которую ты добиваешь. По
крайней мере мне так сильно кажется. Т.е. для ряда ситуаций это
выход (за который и я говорил, если ты помнишь), но навязывать
такое гетто всем -- немногим лучше, чем тупо собирать все
статически в ядро.
> Но вполне разумный хак в данной ситуации (мы не можем быстро
> переписать apt-get)
Боюсь, дело даже не в апте. И еще раз повторю -- _мне_
*кажется*, что ситуация с ядром и модулями, будучи
аппаратно-специфичной _и_ критичной для функционирования системы,
требует просто отдельного разруливания.
Смотри:
- "просто так" обновлять ядро нельзя, потому что может не
загрузиться как минимум -- на то есть Hold.
- при обновлении и вообще для подстраховки рекомендуется иметь
как минимум предыдущее работавшее ядро, следовательно, надо
иметь возможность держать в системе несколько ядер, где под
этим словом подразумевается комплект кода -- необязательно один
пакет (это имеет место уже довольно давно).
Это справляет Allow-Duplicated. При этом ломая возможность
положиться на зависимости субпакетов при обновлении головного
kernel-image.
- около обновления выполняются пляски по обновлению конфигурации
из %post (по минимуму depmod в субпакетах плюс более
нетривиальные модификации симлинков и конфигурации загрузчика в
головных пакетах) -- заметь, при росте количества наборов у нас
есть +/- два выхода:
* макросы/вспомогательные скрипты, которые дергаются заведомо
однообразно (на сейчас это уже не так для kernel-image-std-up
по сравнению с kernel24-up -- бардак с симлинками vmlinuz* и
initrd*, думаю, все наблюдали минимум однажды);
/это плохо. Потому, что любые изменения должны быть отражены
в нескольких местах, а любые ошибки получают лишнюю
возможность расползтись/
* инструмент, в который выносится та часть функциональности,
которая, с одной стороны, достаточно общая для того, чтобы
вынести ее из пакетов, и с другой стороны, достаточно
"интеллектуальная" (выбор активного ядра), чтобы не возлагать
ее на автомат.
/если человек не хочет пользоваться этой штукой -- получит
просто все на месте и initrd, но вот бутлоудером займется
сам/
С учетом того, что вовсе не факт, что я собираюсь грузить
свежеустановленное ядро, а также, возможно, не против
_автоматической_ установки ядра, поступившего как sec update --
но БЕЗ настройки загрузчика на подъем именно его -- а также того,
что такой важный процесс, как собственно конфигурирование этого
самого загрузчика, не может иметь интерактивности в рамках %post
-- мне еще раз кажется, что это отдельная софтина, которая
может/обязана иметь особые отношения с:
* kudzu (<-субпакеты),
* apt (->обновления; установка?),
* rpm (->установка?)
-- нечто вроде select-gcc, который IMCO менее заслуживает
вынесения за рамки alternatives, чем эта задача -- вынесения за
рамки просто зависимостей и PM.
Давай хоть сейчас нарисуем в первом приближении.
Надо:
- определить текущее ядро
- получить список установленных пакетов с модулями, которые его
требуют
- проверить его на доступность в версиях, которые требуют
устанавливаемое ядро
С ходу непонятно, как что-то вроде `uname -r` преобразовать в
SVR.
PS: насчет sec updates -- понимаю, что высказано крайне сумбурно,
но текущая ситуация, кажется, может быть улучшена.
--
---- WBR, Michael Shigorin <mike at altlinux.ru>
------ Linux.Kiev http://www.linux.kiev.ua/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
Url : /pipermail/devel-kernel/attachments/20030813/5b80de46/attachment-0002.bin
More information about the devel-kernel
mailing list