Boot to black, no tty, after (kernel) update

I updated both my laptops just now and both of them booted, after the boot menu, to a black screen. The laptops are different brand and year so shouldn’t be hardware specific.
I use sysmtemd-boot and encrypted main partition, boot partition in /efi.
The workaround is to select fallback-initramfs from the boot menu. The workaround is good enough if I only can trust that it keeps working.

I tried re-installing the kernels, both pacman -S linux-lts linux-lts-headers and reinstall-kernels way, regenerated initrams mkinitcpio -P, and update systemd-boot bootctl update.

Arch wiki says the only difference in fallback is that it skips the autodetect hook, so something’s wrong around there?

EDIT:
linux-lts 6.1.31-1
linux-zen 6.3.5.zen1-1

dracut or mkinitcpio will be used not both …
the one or the other command should cause issues/warnings when proceeding…

That’s not dracut, it’s all systemd-boot, but I think you’re still right not using mkinitcpio together with that. I only tried all those one-by-one in that order and checked if any of them helped in between.

1 Like

dracut replaces mkinitcpio… both to create kernel images used on booting… systemd-boot is the bootloader

After doing another reinstall-kernels the issue is solved. Don’t know what caused it, since I never had issues before after kernel updates.

nice to see youare back on working system!
Could be you overseen something on the update that was failing…

Thanks! I didn’t see any errors, I’ll have to go through logs.
I don’t have dracut on my system. Sorry for confusion: I just realised reinstall-kernels is just a script calling systemd-boot kernel-install on all kernels found in /usr/lib/modules. And also I failed to remember was that to make this all work automagically, I have kernel-install-mkinitcpio aka EOS systemd-boot package from aur, which

  • Overrides the mkinitcpio hooks to generate presets that work with kernel-install
  • Installs hooks to automate the installation and removal of kernels using kernel-install

I guess something there failed

The solution was premature: although reinstall-kernels seemed to work, that didn’t fix my other laptop. I will get back when I figure out the solution

I have the same issue. Updated today to same kernel versions (current & lts). I’m with systemd-boot and mkinitcpio. reinstall kernels did not help…

Had the same issue:

1 Like

@grymphen I now got it working also on my other laptop. I think the magic combo was doing mkinitcpio -P manually and then possibly reinstall-kernels. Anyway, didn’t need to downgrade.

EDIT:
@PeterRies : I just now got to reading your thread and that mkinitcpio -P and reinstall-kernels didn’t help. Sorry, I don’t think I made any other steps but maybe a random amount of reboots. To be frank, when I tried those commands the first time, they didn’t seem to help either, so I don’t know what’s up

you do even use mkinitcpio? we do ship with dracut now.

I use mkinitcpio as installation is a bit older. Switched to systemd boot manually. Dracut was buggy, so i didbt switch.

I’m in the same boat.
Booting from the Linux Boot Manager just freezes the computer on my motherboard’s splash screen.

I manually switched to systemd back in the day and also used mkinitcpio.
I’ve been trying to roll back using timeshift through a live-sub but I’m unable to get to the hdd holding the timeshift back-ups.
The live-usb lists it as /dev/sdc1 but timeshift keeps telling me there’s no back-ups there.

I’ve also tried going through the tutorial with dracut instead but it won’t let me install dracut as mkinitcpio is still there, and it won’t let me remove mkinicpio either.

All you need to do is boot the fallback and downgrade mkinitcpio. The run sudo reinstall-kernels

Restoring from timeshift would likely make things worse.

mkinitcpio -P might temporarily resolve the issue but as soon as anything triggers another run of kernel-install it will be broken again. You really need to downgrade mkinitcpio to fix it.

1 Like

Thanks for the reply. I’m trying to downgrade now but terminal returns this

==> Building image from preset: /etc/mkinitcpio.d/linux.preset: ‘default’
→ -k /efi/0e987f91270e4a7797a7bbdcfe15edd6/6.3.5-arch1-1/linux -c /etc/mkinitcpio.conf -g /efi/0e987f91270e4a7797a7bbdcfe15edd6/6.3.5-arch1-1/initrd
==> ERROR: Unable to write to path: ‘/efi/0e987f91270e4a7797a7bbdcfe15edd6/6.3.5-arch1-1/initrd’
==> Building image from preset: /etc/mkinitcpio.d/linux.preset: ‘fallback’
→ -k /efi/0e987f91270e4a7797a7bbdcfe15edd6/6.3.5-arch1-1/linux -c /etc/mkinitcpio.conf -g /efi/0e987f91270e4a7797a7bbdcfe15edd6/6.3.5-arch1-1/initrd-fallback -S autodetect
==> ERROR: Unable to write to path: ‘/efi/0e987f91270e4a7797a7bbdcfe15edd6/6.3.5-arch1-1/initrd-fallback’
error: command failed to execute correctly
(5/5) Checking which packages need to be rebuilt
foreign protonvpn-cli
foreign protonvpn-gui
foreign python-node-semver
foreign python-patch-ng
foreign python-pluginbase
foreign python-proton-client
foreign python-protonvpn-nm-lib
foreign tbb

What does ls /efi/0e987f91270e4a7797a7bbdcfe15edd6 show?

“No such file or directory”.

Is your system booted normally? What does findmnt --real show?