From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Date: Wed, 13 Aug 2003 16:23:46 +0300 From: Michael Shigorin To: ALT Linux kernel packages development Subject: Re: [d-kernel] =?koi8-r?B?79DR1Nggx9LBwszJ?= =?koi8-r?B?INMgzs/Xz8og08jFzc/KINPCz9LLyQ==?= Message-ID: <20030813132346.GQ17550@osdn.org.ua> Mail-Followup-To: ALT Linux kernel packages development References: <3F39F3BC.3090803@altlinux.com> <20030813121658.GN17550@osdn.org.ua> <3F3A2E1C.1020807@altlinux.com> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="RDS4xtyBfx+7DiaI" Content-Disposition: inline In-Reply-To: <3F3A2E1C.1020807@altlinux.com> User-Agent: Mutt/1.4.1i X-BeenThere: devel-kernel@altlinux.ru X-Mailman-Version: 2.1.2 Precedence: list Reply-To: ALT Linux kernel packages development List-Id: ALT Linux kernel packages development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 Aug 2003 13:23:49 -0000 Archived-At: List-Archive: List-Post: --RDS4xtyBfx+7DiaI Content-Type: text/plain; charset=koi8-r Content-Disposition: inline Content-Transfer-Encoding: 8bit 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 ------ Linux.Kiev http://www.linux.kiev.ua/ --RDS4xtyBfx+7DiaI Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.1 (GNU/Linux) iD8DBQE/OjvibsPDprYMm3IRAiCyAKCB4GJrl6gyVQhhUCdJuWlmbv8FRwCgzXEV /JBh7rVjjRc9ozCSQvfGq20= =HrIV -----END PGP SIGNATURE----- --RDS4xtyBfx+7DiaI--