You are not logged in.

#1 2019-07-11 20:58:52

mwberry
Member
Registered: 2016-02-06
Posts: 8

New motherboard, can't boot EFISTUB

I got a new motherboard and so I went to go do my normal install procedure. I typically boot via EFISTUB. I know EFI has a bit of a reputation of being finicky, but I've been pretty lucky I guess because up until now it's worked pretty consistently across several boards. The configuration is as follows:

1. Single disk, GPT, two partitions
2. First partition: ESP flag set, vfat filesystem, mounted on /boot
3. Second partition: Luks, with ext4 inside, root filesystem
4. Kernel image is at /boot/vmlinuz-linux, initramfs is at /initramfs-linux.img, and intel microcode at /intel-ucode.img
5. Kernel command line is 'rw quiet cryptdevice=UUID=XXX:cryptroot root=/dev/mapper/cryptroot initrd=\intel-ucode.img initrd=\initramfs-linux.img'

On every other board I've used, I've been able to use efibootmgr to directly set the kernel location and commandline in EFI variables. For whatever reason this board doesn't seem to persist the EFI variables across reboots, as the entry was never there after a reboot. So as a test, I dropped to the EFI shell (spec. version 2.5) to poke around a bit. While I'm there I try manually booting by putting the following in /startup.nsh on the ESP and invoking it:

vmlinuz-linux rw quiet cryptdevice=UUID=XXX:cryptroot root=/dev/mapper/cryptroot initrd=\intel-ucode.img initrd=\initramfs-linux.img
shell > fs0:
fs0 > startup.nsh

That works fine and boots right up. In fact, if I select the built-in UEFI shell from the boot menu it will automatically run the startup.nsh if I don't hit ESC within 5 seconds. The problem is that if I select the SSD in the boot menu it doesn't find nor run the startup.nsh nor fall back to the UEFI shell. It just halts with the message "Please insert a boot device and hit enter" or something to that effect. Almost seems like it's trying to boot the disk in the BIOS style. The firmware has a CSM option, which I've turned off (set to UEFI-only mode). The firmware is American Megatrends aptio v. 2.8 and the motherboard is a Jeyway NF592-Q170.

Offline

#2 2019-07-12 07:46:25

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 6,908

Re: New motherboard, can't boot EFISTUB

FWIW Selecting an actual physical device will almost always be an attempt at a BIOS style boot. Check if your motherboard has an option to manually add persistent entries, maybe that way you can convince it to keep the NVRAM variables intact (FWIW on my Acer Aspire V5 I also can't add NVRAM variables through efibootmgr and had to explicitly mark a certain entry as trusted from within the UEFI, which still didn't allow to add parameters so I just use systemd-boot)

Last edited by V1del (2019-07-12 07:47:11)

Offline

#3 2019-07-14 06:06:58

mwberry
Member
Registered: 2016-02-06
Posts: 8

Re: New motherboard, can't boot EFISTUB

I've determined that any executable referenced from the startup.nsh will have '.efi' appended to it automatically. So the "vmlinuz-linux" command is actually looking for the file "vmlinuz-linux.efi" to invoke it. Still stumped on the EFI variables so I've contacted Jetway support. They've been quite attentive so far and I'll report back any findings.

Offline

Board footer

Powered by FluxBB