[devel] зачем вообще может быть нужен initrd при загрузке с локального носителя

Alexey Shabalin a.shabalin на gmail.com
Ср Апр 11 22:18:39 MSK 2018


11 апреля 2018 г., 21:24 пользователь Dmitry V. Levin
<ldv на altlinux.org> написал:
> On Wed, Apr 11, 2018 at 01:37:28PM +0300, Alexey V. Vissarionov wrote:
>> On 2018-04-11 11:52:18 +0300, Sergey Bolshakov wrote:
> [...]
>>  >> Коллеги, а вот кто может внятно объяснить, зачем вообще
>>  >> может быть нужен initrd при загрузке с локального носителя
>>  >> (непосредственно подключенного к компутеру)?
>>
>>  > Множество причин, тысячи их.
>>
>> Доброго сэра, конечно же, не затруднит назвать хотя бы десяток
>> причин из этих тысяч?
>
> Даже при загрузке с локального носителя есть штатные конфигурации,
> в которых ядро само не может смонтировать rootfs и запустить оттуда init,
> например:
> - драйвер локального носителя не вкомпилирован в ядро;

+1
И я буду сильно против, если кто-то попытается мне подсунуть ядро со
всеми возможными вкомпиленными в ядро модулями.
Тем более, некоторыми еще нужен firmware, например FC Qlogic. Их куда
вкомпиливать?

> - драйвер файловой системы rootfs не вкомпилирован в ядро;

+1
Мне вот нужен rootfs на 9pfs. Уверены, что его надо вкомпиливать в ядро?

> - требуются нетривиальные действия для подготовки rootfs к монтированию,
>   не связанные с загрузкой модулей ядра, например, расшифровка устройства
>   с помощью ключа, тем или иным способом полученного от оператора загрузки
>   во время загрузки.

Тут, я думаю, вообще возразить что-то тяжело.

И от себя еще один вариант использования.
Мне бывает нужно подсунуть свою таблицу acpi для ноутбука в виде dsdt файла.

Если ядро претендует на роль универсального, а не для конкретной
железки и конкретной цели использования, без initrd невозможно
обойтись.

-- 
Alexey Shabalin


Подробная информация о списке рассылки Devel