[make-initrd] I: pipeline feature
Leonid Krivoshein
klark.devel at gmail.com
Fri Feb 19 16:40:08 MSK 2021
19.02.2021 13:49, Alexey Gladkov пишет:
> On Thu, Feb 18, 2021 at 11:29:04PM +0300, Leonid Krivoshein wrote:
>>> Это не помогло так как initrd не ждал эти разделы [1] и как только корень
>>> был смонтирован, то сразу же загрузка пошла дальше. Можно указать, чтобы
>>> монтировал все указанные рейды, но тогда initrd их смонтирует. Это
>>> конечно не то, что ожидается.
>> Почему, вполне годное решение. А как это указать? Добавить mountpoints= к
>> параметрам загрузки?
> Сейчас при загрузке можно только переопределить параметры корня [1].
> Дополнительные точки можно указать двумя способами:
>
> * Добавить параметр x-initrd-mount в опции в fstab;
> * Просто сделать добавить нужную точку монтирования в MOUNTPOINTS.
> Например: MOUNTPOINTS += /boot
Ага, спасибо! То, что надо...
>>>> Уже немного разобрался, почему так происходит и
>>>> даже придумал временный объезд. Возможно, простой способ ПРАВИЛЬНО решить
>>>> проблему -- иметь два _РАЗНЫХ_ /etc/mdadm.conf на такие случаи, когда рейды
>>>> используются не для корня. Главное, чтобы эти рейды с данными не начинал
>>>> собирать интеллект в initramfs (ограничить DEVICES=...), тогда в обычной
>>>> системе правила udev сами его соберут.
>>> Я тоже мыслю в эту сторону [2]. Я подумываю о том, как бы сгенерировать
>>> mdadm.conf только для MOUNTPOINTS. К сожалению, я не уверен, что это
>>> можно хорошо сделать. Именно поэтому я и не сделал этого сразу для фичи
>>> mdadm.
>> Поэтому я и предложил затягивать в initramfs один из двух файлов:
>>
>> /etc/mdadm-initrd.conf (если есть, то его)
>> /etc/mdadm.conf (fallback)
> Как быстрое решение это может сработать. Нужно только удостовериться, что
> это решит упомянутые в треде баги. Мне в одной из багов говорят, что
> специальный mdadm.conf не помогает с RAID1.
Там возможно упущено:
-DEVICE = partitions
+DEVICE = /dev/ROOTDEVS
далее запуск make-initrd
Плюс к тому: до перезапуска я бы руками отмонтировал /boot и остановил
его рейд. Иначе он тоже может натыкаться на inactive во второй стадии
загрузки.
Если его загрузчик собирает массив, чтобы загрузить ядро/initrd, не
удивительно, что этот рейд "грязный". Мне кажется, ему поможет
"лекарство" для второй стадии, подобное тому, что есть в initramfs. Но
мы его пока не реализовали. :-) Сначала я бы провёл диагностику в режиме
forensic.
>> Пусть болит голова у админов))
> На этих товарищей я бы не надеялся ))
>
> [1] https://github.com/osboot/make-initrd/blob/master/data/etc/rc.d/init.d/fstab#L84
>
--
Best regards,
Leonid Krivoshein.
More information about the Make-initrd
mailing list