You are not logged in.

#1 2022-05-11 11:20:18

kumala
Member
Registered: 2016-03-11
Posts: 22

[Solved] Boot fails after updating Linux package

I have installed a new firmware on my X1 Carbon 4th Gen. I was expecting Grub to be unable to boot anymore, as specified in the wiki. That's what happened. I was prepared, with the USB stick ready to boot Arch to chroot into my system and restore Grub.

Up to this point, everything worked, I could reboot without issue. I could do my system updates with Pacman and reboot again without issue, as always.

But I must have screwed up somewhere. Because whenever I do an update to my system with Pacman that includes the Linux package, then rebooting fails.

Here is the sequence happening: Grub works fine, then I am asked for my LUKS password and after that stage that's when I see the following error messages:

[FAILED] Failed to start Load Kernel Modules.
[FAILED] Failed to start CLI Netfilter Manager.
[FAILED] Failed to mount /boot/efi.
[DEPEND] Dependency failed for Local File Systems.
You are in emergency mode. [...] Give root password for maintenance

And at that point, I'm at a loss.

My only workaround is to reboot with my Arch USB stick, chroot into my system and do Pacman -S linux.
Pacman says the package is already the latest, I install it anyways and it seems the hooks update the system somehow and allow me to reboot just fine.

I don't understand what is happening to the system and any education on the situation would be appreciated as well as some way to recover this.

Thanks.

Last edited by kumala (2022-05-17 12:30:47)

Offline

#2 2022-05-11 11:23:20

Scimmia
Fellow
Registered: 2012-09-01
Posts: 13,729

Re: [Solved] Boot fails after updating Linux package

Do you have a /boot partition? Is it mounted when you reinstall the kernel?

Offline

#3 2022-05-11 11:28:43

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 25,285

Re: [Solved] Boot fails after updating Linux package

From that error message you are mounting your ESP to /boot/efi. I'm assuming at least during your reinstallation of GRUB you did not mount that to /boot/efi but to /boot directly. Which leads to GRUB trying to read it's kernel image from the ESP rather than the main drive or vice versa.

Can you post in code tags your output for

lsblk -f
file /boot/vmlinuz-linux /boot/efi/vmlinuz-linux
pacman -Q linux
cat /boot/grub/grub.cfg

Offline

#4 2022-05-12 14:37:49

kumala
Member
Registered: 2016-03-11
Posts: 22

Re: [Solved] Boot fails after updating Linux package

Thanks for your answers.

I don't remember what I did exactly when I re-installed GRUB, but indeed it is entirely possible I messed up between /boot and /boot/efi.

Here are the results of the commands:

lsblk -f

NAME           FSTYPE      FSVER    LABEL UUID                                   FSAVAIL FSUSE% MOUNTPOINTS
nvme0n1                                                                                         
├─nvme0n1p1    vfat        FAT32          6498-1603                               417.3M    18% /boot/efi
├─nvme0n1p2    crypto_LUKS 1              15758601-f0a9-40bb-940d-ddbab17ffdaf                  
│ └─cryptroot  LVM2_member LVM2 001       f508c7-L4hf-Oj1h-J4ux-3dXl-cewS-8BLLrv                
│   ├─vg0-swap swap        1              6631e150-e015-4736-9199-6b975679f61e                  [SWAP]
│   ├─vg0-root ext4        1.0            0d60e7af-79c3-435a-8545-6db2901ca2b3     24.1G    70% /
│   └─vg0-home ext4        1.0            2ae58729-798a-4481-92b2-78649b6e436d     14.8G    90% /home
└─nvme0n1p3    ext4        1.0            0e433884-efd9-49f1-bf66-fbe6b4f5b24e    362.6M    19% /boot
file /boot/vmlinuz-linux /boot/efi/vmlinuz-linux

/boot/vmlinuz-linux:     Linux kernel x86 boot executable bzImage, version 5.17.5-arch1-2 (linux@archlinux) #1 SMP PREEMPT Fri, 06 May 2022 18:29:03 +0000, RO-rootFS, swap_dev 0X9, Normal VGA
/boot/efi/vmlinuz-linux: Linux kernel x86 boot executable bzImage, version 5.17.5-arch1-2 (linux@archlinux) #1 SMP PREEMPT Fri, 06 May 2022 18:29:03 +0000, RO-rootFS, swap_dev 0X9, Normal VGA
pacman -Q linux

linux 5.17.5.arch1-2

And the

/boot/grub/grub.cgf

file can be seen here: https://0x0.st/om4k.txt

Offline

#5 2022-05-12 15:03:10

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 25,285

Re: [Solved] Boot fails after updating Linux package

When you chroot and reinstall the linux package,do you actually mount /boot ? If you unmount /boot/efi and /boot are there contents under /boot? (Which should now be a dir on your root) but still the fact that a /boot/efi/vmlinuz-linux even exists shows that you had this kind of mixup at least once and I'm highly suspecting you will also have a /boot/efi/grub/grub.cfg.

If you want to have your kernel images on what is currently mounted to /boot: With the setup as you've posted it now above, you should be able to reinstall GRUB

 grub-install --target=x86_64-efi --efi-directory=/boot/efi--bootloader-id=GRUB

this should on it's own make GRUB use the config and the kernel mounted and placed under /boot at which point you should be able to remove /boot/efi/{initramfs-linux.img.vmlinuz-linux,grub/}

Last edited by V1del (2022-05-12 15:04:12)

Offline

#6 2022-05-17 12:29:14

kumala
Member
Registered: 2016-03-11
Posts: 22

Re: [Solved] Boot fails after updating Linux package

Thanks V1del, I found the command that I issued while re-installing GRUB and indeed I mixed up the destination from /boot/efi to /boot.

Now I remember, I had initially installed the boot on /boot/efi and re-installing GRUB there seems to get me out of the mixup.

Thanks everyone for your help, it appears to be fixed now.

Offline

Board footer

Powered by FluxBB