История изменений
Исправление Xenius, (текущая версия) :
1. initramfs можно впихнуть в тот же файл, я так понимаю.
Тот же раздел, ты имел ввиду? Или куда впихнуть initramfs?
Можно и так и так. Читать подробнее тут или например тут. Если initramfs в том же файле, то ничего делать не надо, если в другом, то указать ядру параметр initrd=/EFI/yourOS/initramfs.img
где указывается полный путь к файлу в ESP, причём разделители путей могут быть как правильные /, так и обратный слеш как принято в EFI...
Собственно в этом был и вопрос.
И такой вот ответ — если не было настроено заранее, то только через EFI shell. Если в прошивке твоей материнки его нет и ты не озаботился его установить и у тебя нет внешнего носителя с EFI shell, то никак.
Дай линк, где то описано. Сходу не гуглится.
Читай man efibootmgr или более подробные руководства по нему на русском или английском (например archwiki и на хабре).
-n | --bootnext XXXX
Set BootNext to XXXX (hex)
...
BootNext - the boot entry which is scheduled to be run on next boot.
This supercedes BootOrder for one boot only, and is deleted by the boot manager after first use.
This allows you to change the next boot behavior without changing BootOrder.
По идее или ты где-то видел хоть что-то похожее? Дай линк.
Я знаю что в опциях при настройке ядра при компиляции должна задаваться дефолтная командная строка ядра. Где он конкретно я не смотрел, так как мне никогда это не было нужно. Мне проще задать опции не при компиляции ядра, а в efibootmgr.
То есть никак?
Что значит, никак? На компьютерах издавна есть загрузочное меню, обычно активируется нажатием Esc или F12 или ещё чего-нибудь при ранней загрузке.
В случае классического BIOS в этом меню будет выбор загрузочного устройства — жесткий диск, CD, флоппи, флешка...
В случае UEFI BIOS загрузочное меню формируется на основании переменных в nvram и там могут быть любые пункты, какие захочешь. Редактировать это меню можно уже многократно упомянутым efibootmgr
.
Как конкретно это меню будет выглядеть — вообще не зависит от efistub ядра, так как это меню показывается ещё до того, как какое-либо EFI-приложение будет запущено. Ядро с EFI Stub — это просто такое EFI-приложение, как и загрузчик винды, grub, elilo и прочие и точно так же выбирается из этого меню или запускается через EFI shell или другим загрузчиком.
При этом, я сам предпочитаю конечно же GRUB, поскольку доверия кривым проприетарным EFI-прошивкам у меня мало. Но есть те кто любят сэкономить лишние пару секунд на записи загрузчика и желают грузить сразу ядро — вот для них EFI stub и сделан.
Исходная версия Xenius, :
1. initramfs можно впихнуть в тот же файл, я так понимаю.
Тот же раздел, ты имел ввиду? Или куда впихнуть initramfs?
Можно и так и так. Читать подробнее тут или например тут. Если initramfs в том же файле, то ничего делать не надо, если в другом, то указать ядру параметр initrd=/EFI/yourOS/initramfs.img
где указывается полный путь к файлу в ESP, причём разделители путей могут быть как правильные /, так и обратный слеш как принято в EFI...
Собственно в этом был и вопрос.
И такой вот ответ — если не было настроено заранее, то только через EFI shell. Если в прошивке твоей материнки его нет и ты не озаботился его установить и у тебя нет внешнего носителя с EFI shell, то никак.
Дай линк, где то описано. Сходу не гуглится.
Читай man efibootmgr или более подробные руководства по нему на русском или английском (например archwiki и на хабре).
-n | --bootnext XXXX
Set BootNext to XXXX (hex)
...
BootNext - the boot entry which is scheduled to be run on next boot. This supercedes BootOrder for one boot only, and is deleted by the boot manager after first use. This allows you to change the next boot behavior without changing BootOrder.
По идее или ты где-то видел хоть что-то похожее? Дай линк.
Я знаю что в опциях при настройке ядра при компиляции должна задаваться дефолтная командная строка ядра. Где он конкретно я не смотрел, так как мне никогда это не было нужно. Мне проще задать опции не при компиляции ядра, а в efibootmgr.
То есть никак?
Что значит, никак? На компьютерах издавна есть загрузочное меню, обычно активируется нажатием Esc или F12 или ещё чего-нибудь при ранней загрузке.
В случае классического BIOS в этом меню будет выбор загрузочного устройства — жесткий диск, CD, флоппи, флешка...
В случае UEFI BIOS загрузочное меню формируется на основании переменных в nvram и там могут быть любые пункты, какие захочешь. Редактировать это меню можно уже многократно упомянутым efibootmgr
.
Как конкретно это меню будет выглядеть — вообще не зависит от efistub ядра, так как это меню показывается ещё до того, как какое-либо EFI-приложение будет запущено. Ядро с EFI Stub — это просто такое EFI-приложение, как и загрузчик винды, grub, elilo и прочие и точно так же выбирается из этого меню или запускается через EFI shell или другим загрузчиком.
При этом, я сам предпочитаю конечно же GRUB, поскольку доверия кривым проприетарным EFI-прошивкам у меня мало. Но есть те кто любят сэкономить лишние пару секунд на записи загрузчика и желают грузить сразу ядро — вот для них EFI stub и сделан.