Создание загрузочной флешки для кастомного ядра

Создание загрузочной флешки для кастомного ядра

Я прочитал руководства по созданию собственного ядра изздесьи я могу загрузить его, как описано в руководстве, на виртуальной машине, используя GRUB в качестве загрузчика.

Я думаю, было бы веселее, если бы я мог сделать то же самое на голом оборудовании, используя загрузочную флешку. То есть использовать GRUB, флешку и исполняемый файл моего ядра, чтобы сформировать загрузочную флешку, а затем загрузить ядро ​​с этой флешки.

В1.Я думал использовать обычную процедуру, как я делаю загрузочный linux-флешку, но мое ядро ​​на самом деле не iso-образ, а исполняемый файл формата elf. Сработает ли обычный метод, если я каким-то образом преобразую свой исполняемый файл в формат iso?

В2.Есть ли еще идеи/ссылки на ресурсы, как мне действовать дальше?

P.S.:Это НЕ ядро ​​Linux как таковое, это абсолютно минимальное ядро, без файловой системы, ничего. Просто загружается, печатает что-то на консоли и может обрабатывать события клавиатуры, вот и все.

решение1

С точки зрения загрузки, сам файл ядра — это просто опция конфигурации, которую снабжает grub. Пока grub может найти ядро, все должно быть в порядке.

Однако вам понадобится что-то для использования в качестве rootfs, поэтому раздел или образ dd на вашем usb-ключе будет иметь смысл, а затем вы сможете сохранить там свой файл ядра. Вероятно, вы даже сможете обойтись размещением его прямо в /boot со всеми вашими файлами grub. Так что как минимум вам понадобится mbr, настроенный на usb-ключе для загрузки, и файловая система, содержащая вашу конфигурацию grub... (Я поискал в Google и увидел примеры использования как fat, так и ext для /boot - я знаю, что большинство инструментов для загрузочных usb-ключей используют fat для базы, поэтому я бы рекомендовал это - но ext тоже должен работать, я думаю.) Есть некоторая информацияздесьс примером для ubuntu. Я думаю, на вашем месте я бы создал загрузочный USB с одним из этих инструментов, а затем модифицировал бы его под свои нужды - таким образом я бы получил установку grub и mbr, которые были бы сделаны за меня.

В конце концов, я думаю, что вопрос в том, как запустить grub на USB-накопителе, а после этого останется только настроить grub, которыйэтотссылка помогла мне в прошлом.

решение2

Читатьо системе живой сборки Debian.

Есть опция --linux-package, которая должна указывать на linux-kernel.deb, вы можете указать свое собственное ядро, просто упакуйте его в формат Debian.

Связанный контент