You are not logged in.

#1 2024-09-22 18:40:06

danielquinn
Member
From: Cambrige, UK
Registered: 2018-09-02
Posts: 13
Website

EFI Stub failure: "device '' not found"

I'm trying to get my desktop machine to boot with an EFI Stub and... it's not going well.  The setup isn't even terribly interesting:

* Full disk encryption with Luks
* Default Linux kernel
* ESP mounted at /boot
* A very boring partitioning scheme: ESP: 1G, Swap: 64G, (Encrypted) root: everything else (~3.6TB)
* efibootmgr to tie it together

The only tricky bit is that this box used to dual-boot with Windows, and in an effort to reclaim the useless space, I wiped the old EFI partition so I had to create a new one.  This partition is formatted with vfat and at the moment only contains the following (note that /boot/EFI is empty):

# find /boot
/boot/
/boot/intel-ucode.img
/boot/vmlinuz-linux
/boot/initramfs-linux.img
/boot/initramfs-linux-fallback.img
/boot/EFI

Here's the relevant output of `lsblk --fs`:

NAME        FSTYPE      FSVER            LABEL       UUID                                 FSAVAIL FSUSE% MOUNTPOINTS
loop0       squashfs    4.0                                                                     0   100% /run/archiso/airootfs
...
nvme0n1                                                                                                  
├─nvme0n1p1 vfat        FAT32                        0617-19E0                             823.7M    19% /mnt/boot
├─nvme0n1p2 swap        1                            fb51e174-b273-4d59-a4b5-990059f6d0c2                [SWAP]
└─nvme0n1p3 crypto_LUKS 2                            32007a89-50e5-48a7-b101-b59a7e6cc384                
  └─root    ext4        1.0              Root        f8cd84a0-be39-4690-acd1-00ffa3e45444    3.3T     0% /mnt

And here's the command I'm using for `efibootmgr`:

efibootmgr \
  --bootnum 0000 \
  --disk /dev/nvme0n1 \
  --part 1 \
  --label "Arch Linux" \
  --loader /vmlinuz-linux \
  --unicode 'rw initrd=\intel-ucode.img initrd=\initramfs-linux.img cryptdevice=UUID=32007a89-50e5-48a7-b101-b59a7e6cc384:root root=/dev/mapper/root' \
  splash

This is written into a script file that I run once I've run decrypted the drive, mounted the partions, and run

arch-chroot /mnt

.
When I unmount everything and reboot though, it dumps this out at me:

[    0.364603] x86/cpu: VMX (outside TXT) disabled by BIOS
:: running early hook [udev]
Starting systemd-udevd version 256.6-1-arch
::running hook [udev]
:: Triggering uevents...
[    8.586390] hid-generic 0003:0B05:1826.0001: No inputs registered, leaving
[   18.957142] usb 3-9: device descriptor read/all, error -110
[   29.623805] usb 3-9: device descriptor read/all, error -110
[   40.290469] usb 3-9: device descriptor read/all, error -110
[   50.744045] usb 3-9: device descriptor read/all, error -110
:: running hook [keymap]
:: Loading keymap...done.
::running hook [encrypt]
ERROR: device '' not found. Skipping fsck.
:: mounting '' on real root
mount: /new_root: fsconfig system call failed: fuseblk: Bad value for 'source'.
ERROR: Failed to mount '' on real root
You are now being dropped into an emergency shell.
sh: can't access tty; job control turned off
[rootfs ~]#

Interestingly, at this point I can run this if I want:

# cryptsetup open /dev/nvme0n1p3 root
Enter passphrase for /dev/nvme0n1p3:
# mount --mkdir /dev/mapper/root /woot

and it all works as expected so it's probably the efibootmgr command... right?

Some answers to the likely-to-be-asked questions:

* Yes, I confirmed that the system booted with UEFI support before doing this.  Actually I failed to check for this the first time around and had to restart from scratch.
* My motherboard is an "ASUS Rampage V Edition 10".  The BIOS has been updated to the latest version.
* I recognise that there's probably a USB power issue going on here as well, but I'm hoping to save that for another day.  At the moment, I just want my machine back up and working.

Any help would be greatly appreciated.

Last edited by danielquinn (2024-09-22 20:57:15)

Offline

#2 2024-09-22 19:15:04

Scimmia
Fellow
Registered: 2012-09-01
Posts: 12,044

Re: EFI Stub failure: "device '' not found"

What does `efibootmgr -u` show?

Online

#3 2024-09-22 19:21:31

danielquinn
Member
From: Cambrige, UK
Registered: 2018-09-02
Posts: 13
Website

Re: EFI Stub failure: "device '' not found"

Well now that's interesting:

# efibootmgr -u
BootCurrent: 0003
Timeout: 1 seconds
BootOrder: 0000,0003,0001,0002
Boot0000* Arch Linux	HD(1,GPT,6cbe31b9-6ea9-4fa0-bc5b-daf3e383a7df,0x800,0x200000)/\vmlinuz-linuxrw initrd=\intel-ucode.img initrd=\initramfs-linux.img cryptdevice=U猀瀀氀愀猀栀
Boot0001* Hard Drive	BBS(HD,,0x0)
Boot0002* CD/DVD Drive	BBS(CDROM,,0x0)
Boot0003* UEFI: SanDisk, Partition 1	PciRoot(0x0)/Pci(0x14,0x0)/USB(11,0)/HD(1,MBR,0xa927f36c,0x1da800,0x52800)

I've never seen anything like that that gibberish at the end of the Boot0000 line

Last edited by danielquinn (2024-09-22 19:23:17)

Offline

#4 2024-09-22 20:15:27

Scimmia
Fellow
Registered: 2012-09-01
Posts: 12,044

Re: EFI Stub failure: "device '' not found"

Well that is interesting. You can try it without the -u, but I'd suspect you'd just end up with a long line of gibberish instead of the CJK characters.

I have heard of some UEFI implementations that limit how long boot entries can be, that may be what you're running into.

Online

#5 2024-09-22 20:23:17

danielquinn
Member
From: Cambrige, UK
Registered: 2018-09-02
Posts: 13
Website

Re: EFI Stub failure: "device '' not found"

That's the thing: this machine was running just this morning (with the extra Windows partition) with a very similar efibootmgr command, including the cryptdevice=UUID=... part.  I can't understand why it would suddenly be garbling the values.

Anyway, if anyone else wants to take a swing at this, here's the output of just `efibootmgr` on its own:

# efibootmgr 
BootCurrent: 0003
Timeout: 1 seconds
BootOrder: 0000,0003,0001,0002
Boot0000* Arch Linux	HD(1,GPT,6cbe31b9-6ea9-4fa0-bc5b-daf3e383a7df,0x800,0x200000)/\vmlinuz-linux72007700200069006e0069007400720064003d005c0069006e00740065006c002d00750063006f00640065002e0069006d006700200069006e0069007400720064003d005c0069006e0069007400720061006d00660073002d006c0069006e00750078002e0069006d0067002000630072007900700074006400650076006900630065003d00550000730070006c0061007300680000300037006100380039002d0035003000650035002d0034003800610037002d0062003100300031002d006200350039006100370065003600630063003300380034003a0072006f006f007400200072006f006f0074003d002f006400650076002f006d00610070007000650072002f0072006f006f00740000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
Boot0001* Hard Drive	BBS(HD,,0x0)0000474f00004e4f97000000010000006b0043005400340030003000300050003300530053004400380000000501090002000000007fff040002010c00d041030a0000000001010600010101010600000003171000010000006479a775f00000487fff040001042e00ef47642dc93ba041ac194d51d01b4ce643005400340030003000300050003300530053004400380000007fff04000000424f00004e4faf000000010000006f00570044004300200057004400340030003000320046004600570058002d003600380054005a0034004e00300000000501090002000000007fff040002010c00d041030a0000000001010600021f03120a000000ffff00007fff040001043e00ef47642dc93ba041ac194d51d01b4ce648004e0035004700300044004d00420020002000200020002000200020002000200020002000200000007fff04000000424f00004e4f8d000000010000006b00530061006e004400690073006b0000000501090002000000007fff040002010c00d041030a00000000010106000014030506000b007fff040001043e00ef47642dc93ba041ac194d51d01b4ce63400430035003300300030003100320034003400310031003000380031003000360032003600300000007fff04000000424f
Boot0002* CD/DVD Drive	BBS(CDROM,,0x0)0000474f00004e4f97000000010000006f004400520057002d0032003400440035004d00540000000501090003000000007fff040002010c00d041030a0000000001010600021f03120a000100ffff00007fff040001043e00ef47642dc93ba041ac194d51d01b4ce633004b0047004200560035003200380033003000200031002000200020002000200020002000200000007fff04000000424f
Boot0003* UEFI: SanDisk, Partition 1	PciRoot(0x0)/Pci(0x14,0x0)/USB(11,0)/HD(1,MBR,0xa927f36c,0x1da800,0x52800)0000424f

Offline

#6 2024-09-22 20:26:13

Scimmia
Fellow
Registered: 2012-09-01
Posts: 12,044

Re: EFI Stub failure: "device '' not found"

I do see one issue, no space before 'rw', but I can't image that would cause what we're seeing with efibootmgr.

Online

#7 2024-09-22 21:08:51

danielquinn
Member
From: Cambrige, UK
Registered: 2018-09-02
Posts: 13
Website

Re: EFI Stub failure: "device '' not found"

Interestingly, if I omit "splash" from the --unicode parameter, the output is un-garbled:

[root@archiso ~]# efibootmgr --create --disk /dev/nvme0n1 --part 1 --label "Linux" --loader /vmlinuz-linux --unicode 'rw initrd=\intel-ucode.img initrd=\initramfs-linux.img cryptdevice=UUID=32007a89-50e5-48a7-b101-b59a7e6cc384:root root=/dev/mapper/root'
BootCurrent: 0003
Timeout: 1 seconds
BootOrder: 0000,0003,0001,0002
Boot0001* Hard Drive	BBS(HD,,0x0)
Boot0002* CD/DVD Drive	BBS(CDROM,,0x0)
Boot0003* UEFI: SanDisk, Partition 1	PciRoot(0x0)/Pci(0x14,0x0)/USB(11,0)/HD(1,MBR,0xa927f36c,0x1da800,0x52800)
Boot0000* Linux	HD(1,GPT,6cbe31b9-6ea9-4fa0-bc5b-daf3e383a7df,0x800,0x200000)/\vmlinuz-linuxrw initrd=\intel-ucode.img initrd=\initramfs-linux.img cryptdevice=UUID=32007a89-50e5-48a7-b101-b59a7e6cc384:root root=/dev/mapper/root

...though (a) I don't know what "splash" does or if I need it, but more importantly, (b) the problem remains the same.  Rebooting the machine complains about being unable to mount ''.

Offline

#8 2024-09-23 08:38:20

danielquinn
Member
From: Cambrige, UK
Registered: 2018-09-02
Posts: 13
Website

Re: EFI Stub failure: "device '' not found"

Update: I gave up and installed Grub.  It works, though I have no idea why it does while the stub doesn't.  Now I have nvidia driver issues, but who doesn't?  Anyway, if someone one day has some ideas about how to make this work, I'd be happy to try again.

Offline

#9 2024-09-23 09:52:03

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 23,044

Re: EFI Stub failure: "device '' not found"

Bad UEFI implementations might impose a limit on the amount of data you can punch into a single entry, and since Windows will never need that extensive entries that might be a limiting factor.

---
Ah wait scimmia mentioned as much already, generally chances for that are there.

Offline

Board footer

Powered by FluxBB