WRITELOOP

RECOVERING FROM A KERNEL UPDATE FAILURE

During a routine packages update on my arch-based distro (EndeavourOS), the kernel setup via dracut failed with a 'Broken Pipe'. Here are my notes on how to fix that.

2025 May 29

After a “Broken Pipe” during a routine packages update, I thought everything was OK, because the installation finished with no errors (exit code 0).

Since those updates require you to restart the machine, I did exactly that, but I had a surprise: The system rebooted once more into my laptop firmware.

So, I rebooted once more and when presented to the EndeavourOS boot menu I chose the “Fallback” option - which boots into a previous working kernel.

On there everything was OK - I also ensured that /boot partition had free space, which sometimes can be a reason why dracut fails on the initramfs step.

Then I forced the kernel upgrade through reinstalling the linux kernel package using pacman, which would trigger the dracut hook that failed previously:

$ sudo pacman -S linux

This time it finished with no “Broken Pipe” message.

Then I rebooted into the default kernel and everything was back to normal. Problem solved.

Other options

Depending on your specific situation, you might also try:

  • Manually rebuild initramfs: sudo mkinitcpio -P (for other arch-based distros that use mkinitcpio instead of dracut)
  • Check kernel installation logs, to identify the specific cause of the failure: journalctl -u pacman

Prevention Tips

To avoid similar issues in the future:

  • Always monitor pacman output during updates, especially when kernel-related hooks are running
  • Ensure /boot has adequate free space before major updates (at least 100-200MB recommended)
NOTE: The original content(s) that inspired this one can be found at:

All copyright and intellectual property of each one belongs to its' original author.