Quantcast
Channel: Linux.org.ru: Форум (тех. форум)
Viewing all articles
Browse latest Browse all 73844

Howto. Загрузка ядра собранного с конфигом allmodconfig

$
0
0

Конфиг allmodconfig позволяет все модули отметить как 'm', т.е. как подгружаемые а не встроенные в ядро.

Но проблема в том что ядро с таким конфигом не загружается.

Я подразумеваю в этой статье что вы уже отметили в конфиге подходящие для вашего компьютера дисковые драйвера sata/ide/scsi как встроенные в ядро 'y' или как 'm' для размещения на initrd. Но ядро всё равно не грузится.

--------- Загрузочное сообщение ядра: Cannot open root device '(null)'

Если вы указали в grub параметр root=/dev/sda1 (sda1 указан для примера), а при при загрузке появляется сообщение 'Cannot open root device '(null)' or unknown-block(0,0)' (обратите внимание что вместо sda1 появилось null). Это значит что нужно измненить конфиг на 'CONFIG_CMDLINE_BOOL=n'.

Объяснение. CONFIG_CMDLINE_BOOL указывает что нужно использовать строку аргументов встроенное в ядро при сборке ядра. Что приводит к потере аргументов указанных в загрузчике grub. Т.е. параметра root.

---------- Загрузочное сообщение ядра: Failed to execute /init

При использовании initrd при загрузке может появится сообщение 'Failed to execute /init' и нужно измненить конфиг на 'CONFIG_BINFMT_SCRIPT=y'.

Объяснение. CONFIG_BINFMT_SCRIPT отвечает за поддержку возможности запускать скрипты начинающиеся к примеру на '#!/bin/sh'.

 


Viewing all articles
Browse latest Browse all 73844

Trending Articles