You are not logged in.
Hi everyone,
Arch noob here, but long time user, stuck since I upgraded yesterday. Spent my whole day on this problem.
I upgraded my install and at reboot I get this error, that disappears after ~1s.
Failed to execute Arch Linux (\vmlinuz-linux): Device Error
From a bootable usb I could arch-chroot onto my system.
In pacman logs a kernel update is mentionned from 5.8.1 to 5.8.9, dating from the last system upgrade.
So I downgraded the kernel, using pacman cache, back to 5.8.1. (helped by this wiki page).
But the the Arch Linux option does not appear anymore in the UEFI boot selection menu.
I checked pacman logs and did find that a mkinitcpio -P was triggered, and so vmlinuz-linux was rebuilt.
The following time was spent trying to recreate a UEFI boot entry using the tool efibootmgr.
At this point I managed to create an entry, but starting it fails, and I get the error: (extracted via OCR so not completely accurate)
[ 01473021 DMAR: (Firmware Bug: No firmware reserved region can cover this
RMRR [0x000000003b800000-0x000000003fffffff], contact BIOS vendor for fixes
[ 0783664] ACPI BIOS Error (bug): Could not resolve symbol [\_SB.PCI0.LPCB.HEC.ECAV], AE_NOT_FOUND (20200528/psargs-330)
[ 0783703] ACPI Error: Aborting method \TZ.TZ00._TMP due to previous error (AE MOT FOUND) 20200528 /psparse-529)
[ 0783885] ACPI BIOS Error (bug): Could not resolve symbol [\_SB.PCI0.LPCB.HEC.ECAV], AE_NOT_FOUND 2020528 /psargs-330)
[ 0783921] ACPI Error: Aborting method \TZ.TZ00._TMP due to previous error (AE_NOT_FOUND) (2920852B/psparse-529)
[ 0784012] ACPI BIOS Error (bug): Could not resolve symbol [\_SB.PCI0.LPCB.HEC.ECAV], AE_NOT_FOUND 20200528 /psargs-330)
[ 0784047] ACPI Error: Aborting method \TZ.TZ00._TMP due to previous error (AE_NOT_FOUND) (28200528/psparse-529)
[ 0784130] ACPI BIOS Error (bug): Could not resolve symbol [\_SB.PCI0.LPCB.HEC.ECAV], AE_NOT_FOUND (20200528 /psargs-330)
[ 0784164] ACPI Error: Aborting method \TZ.TZ00._TMP due to previous error (AE_NOT_FOUND) (29200528/psparse-529)
:: running early hook [udev] Starting version 246.5-1-arch
:: running hook [udev]
:: Triggering uevents...
:: running hook [encrypt]
ERROR: device '' not found. Skipping fsck.
:: mounting '' on real root
mount: /new_root: no filesystem type specified.
You are now being dropped into an emergency shell.
sh: can't access tty: job control turned off
[rootfs ]# [ 3133729] sd 2:0:0:0: [sda] No Caching node page found
[ 2.133784] sd 2:0:0:0: [sda] Assuming drive cache: write through
This looks similar to this topic Installation» EFISTUB problem.
Here is the full command I ran:
efibootmgr -d /dev/nvme0n1 -p 1 -c -L "Arch Linux" -l /vmlinuz-linux -u 'cryptdevice=UUID=c7aeffa6-ae5b-4a14-95a4-6492d8b4bd5e:cryptroot root=UUID=726208fb-937d-41e5-91cc-ec10c68a4bc1 rw initrd=/intel-ucode.img initrd=/initramfs-linux.img' -v
Note: for initrd kernel parameters I tried both anti slash and regular slash, as suggested in this post comment, but I get the same result.
Result of efibootmgr -v:
BootCurrent: 000E
Timeout: 0 seconds
BootOrder: 0001,0007,0000,0008,0009,000B,000C,000E
Boot0000* Windows Boot Manager HD(1,GPT,82b10020-9ed0-4508-8894-907fcaa85a87,0x800,0x100000)/File(\EFI\Microsoft\Boot\bootmgfw.efi)WINDOWS.........x...B.C.D.O.B.J.E.C.T.=.{.9.d.e.a.8.6.2.c.-.5.c.d.d.-.4.e.7.0.-.a.c.c.1.-.f.3.2.b.3.4.4.d.4.7.9.5.}...t................
Boot0001* Arch Linux HD(1,GPT,82b10020-9ed0-4508-8894-907fcaa85a87,0x800,0x100000)/File(\vmlinuz-linux)c.r.y.p.t.d.e.v.i.c.e.=.U.U.I.D.=.c.7.a.e.f.f.a.6.-.a.e.5.b.-.4.a.1.4.-.9.5.a.4.-.6.4.9.2.d.8.b.4.b.d.5.e.:.c.r.y.p.t.r.o.o.t. .r.o.o.t.=.U.U.I.D.=.7.2.6.2.0.8.f.b.-.9.3.7.d.-.4.1.e.5.-.9.1.c.c.-.e.c.1.0.c.6.8.a.4.b.c.1. .r.w. .i.n.i.t.r.d.=./.i.n.t.e.l.-.u.c.o.d.e...i.m.g. .i.n.i.t.r.d.=./.i.n.i.t.r.a.m.f.s.-.l.i.n.u.x...i.m.g.
Boot0007* UEFI: PC300 NVMe SK hynix 512GB, Partition 1 HD(1,GPT,82b10020-9ed0-4508-8894-907fcaa85a87,0x800,0x100000)/File(EFI\Microsoft\Boot\bootmgfw.efi)..BO
Boot0008* Diskette Drive BBS(Floppy,Diskette Drive,0x0)..BO
Boot0009* M.2 PCIe SSD BBS(HD,PC300 NVMe SK hynix 512GB ,0x0)..BO
Boot000B* CD/DVD/CD-RW Drive BBS(CDROM,CD/DVD/CD-RW Drive,0x0)..BO
Boot000C* USB Storage Device BBS(USB,General USB Flash Disk 1.00,0x0)..BO
Boot000E* UEFI: General USB Flash Disk 1.00, Partition 1 PciRoot(0x0)/Pci(0x14,0x0)/USB(1,0)/HD(1,MBR,0x58254e,0x800,0x777800)..BO
Content of fstab:
# Static information about the filesystems.
# See fstab(5) for details.
# <file system> <dir> <type> <options> <dump> <pass>
# /dev/mapper/cryptroot
UUID=726208fb-937d-41e5-91cc-ec10c68a4bc1 / ext4 rw,relatime,data=ordered 0 1
# /dev/nvme0n1p1
UUID=E711-10E4 /boot vfat rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro 0 2
/swapfile none swap defaults 0 0
Result of lsblk -f:
NAME FSTYPE FSVER LABEL UUID FSAVAIL FSUSE% MOUNTPOINT
loop0 squashfs 4.0 0 100% /run/archiso/sfs/airootfs
sda
└─sda1 vfat FAT32 ARCH_202009 021B-5D55 3.1G 18% /run/archiso/bootmnt
nvme0n1
├─nvme0n1p1 vfat FAT32 E711-10E4
├─nvme0n1p2 crypto_LUKS 2 c7aeffa6-ae5b-4a14-95a4-6492d8b4bd5e
│ └─cryptroot ext4 1.0 726208fb-937d-41e5-91cc-ec10c68a4bc1 133.6G 61% /mnt
├─nvme0n1p3
└─nvme0n1p4 ntfs 401803F31803E72E
As you can see I run a windows install, and my Arch partition is fully encrypted.
The computer is a Dell XPS 15 9550 laptop with a 500gb SSD.
I also checked the hooks in /etc/mkinitcpio.conf and they seem correct according to related documentation.
Thank you so much for reading this!
Related pages:
- wiki page EFISTUB#efibootmgr to learn about efibootmgr command
- wiki page microcode to include microcode in above command
- wiki page Dm-crypt > Configuring the boot loader to find out the needed kernel parameter in my encryption use case
- Topic "Installation» [SOLVED] Booting a luks encrypted system directly from UEFI firmware" related use case
- Topic "Installation» EFISTUB problem" similar error
Last edited by Scadek (2020-09-17 20:13:29)
Offline
Well I managed to gain access again to my environnement.
I didn't find the original issue though, so I'm interested in any lead you might have.
The fix for me was to
1. install systemd-boot
2. add a systemd-boot entry for the Arch install
3. add an entry for systemd-boot in the UEFI boot selection
4. upgrading back the kernel and headers, because I had errors apparently originating from the fact that kernel modules were not downgraded as well.
So it might just the reason why I could not create new UEFI menu entry. When downgrading the kernel I only downgraded linux and linux-headers, and the wiki page mentions "downgrade at least linux, linux-headers and any kernel modules".
And I totally missed the last part. Indeed now that I read that I don't know how to downgrade a kernel module..
Still I don't know why the first upgrade failed. Maybe the generated kernel image could not be handled by UEFI.
Last edited by Scadek (2020-09-17 21:32:07)
Offline
Updated this morning and system broke. after loading up a live iso I found that initramfs was missing (but present in /boot) with system being up to date I simply copied across initramfs image and system booted fine.
Got a feeling there may have been change in mkinitcpio (still looking).
Certainly did not have to reinstall systemd-boot or mess with configs.
Just made sure efi partition was mounted to /mnt/boot/efi and not /boot (my first mistake)
Mr Green I like Landuke!
Offline