1

Я использую Gentoo Linux с пользовательским скомпилированным ядром и только что перешел с ядра 2.6 на 3.5.

Поскольку мои HD находятся в режиме RAID 0, я использую пользовательский файл initrd для возможности загрузки. Хотя ядро 2.6 способно загружаться без проблем, новое скомпилированное ядро 3.5 не загружается, жалуясь на no block devices found . После просмотра скриптов, содержащихся в initrd.cpio я вижу, что сообщение об ошибке выдается инструментом mdadm .

Кто-нибудь знает об этом?

Редактировать: сегодня утром я заметил, что на моем старом initrd возникла какая-то проблема, которая отлично работает для ядер 2.6, поэтому создал новый initrd, который отлично работает и позволил мне загрузиться в GNU/Gentoo Linux с тем же 3.5 bzImage.

Это может быть проблемой mdadm, собираюсь проверить это.

https://bugs.gentoo.org/show_bug.cgi?id=416081

1 ответ1

0

Новое ядро обычно требует нового initrd.

В сгенерированном (genkernel) initrd есть загрузочный параметр scandelay=<seconds> который мне пригодился в прошлом. На одном из моих блоков mdadm работал до того, как все устройства были доступны, и не смог собрать устройство /dev /mdX, где находится корневой раздел.

Если я правильно понимаю (из просмотра /usr/share/genkernel/defaults/initrd.scripts), scandelay заставляет скрипт зависать во время установки udev, перед сборкой любых программных массивов и перед попыткой смонтировать настоящий корневой раздел.

Попробуйте задержку сканирования 3-10 секунд.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .