Boot, GRUB & systemd-boot

systemd-boot does not list the installed Linux entry

systemd-boot reads entries from the ESP or XBOOTLDR; missing menu items require checking the actual boot partition, entry files and image paths.

On this page
  1. Symptoms & scope
  2. Possible causes
  3. Diagnose safely
  4. Evidence-guided next steps
  5. References & review
  6. Related problems

Symptoms & scope

  • The menu contains firmware or another OS but no expected Linux entry.
  • A kernel update appears installed on root yet absent from bootctl list.

Relevant environment

UEFI systems intentionally using systemd-boot with Boot Loader Specification Type #1 entries or Type #2 unified kernel images.

Possible causes

These are possible explanations, not a confirmed diagnosis. Several independent faults can coexist.

  • Entry files or kernel/UKI images may have been written while the actual boot partition was unmounted.
  • The loader may use a different ESP, an incompatible entry layout or an absent XBOOTLDR image; installing the loader alone does not create every kernel entry.

Diagnose safely

Run one command at a time in the relevant session. Read the explanation first. Uppercase placeholders need your own values; tools and privileges vary by distribution. These commands are displayed here and never executed by the website.

Check 1

Read current loader and ESP/XBOOTLDR information. Administrator access may be needed to read boot files; this command does not install a loader.

bootctl status --no-pager

Interpret the result: Compare the actually booted loader/partition with the mount used by kernel updates. In a live session, current loader refers to the live boot.

Check 2

Read discovered Boot Loader Specification entries and referenced image paths without changing the default.

bootctl list --no-pager

Interpret the result: An absent entry differs from a listed entry with a missing image. Check whether its files reside on the ESP/XBOOTLDR used by the booted loader.

Evidence-guided next steps

Regenerate entries on the actual boot partition

If the update wrote outside the mounted ESP/XBOOTLDR, mount the verified installation boot partition through the distribution’s normal procedure and rerun its supported kernel-entry generation. Confirm both entry and referenced images exist.

Precautions: Keep an older working kernel entry and avoid copying opaque filenames from another machine. Image paths in a Type #1 entry are relative to the boot partition.

Recovery / rollback: Restore the saved original entry files and select the older verified entry if regeneration fails.

Did this solution help you?

Share this solution#

Repair the documented entry layout

If files are on the correct partition but the entry is malformed, correct its documented Type #1 fields or regenerate the distribution’s UKI Type #2 image. Check that the intended signed image matches the selected entry.

Precautions: Do not replace systemd-boot with GRUB merely to create a missing entry. Follow the installed distribution’s generator so future kernel updates remain consistent.

Recovery / rollback: Restore the prior entry or UKI backup and boot that verified version; remove only a newly created broken entry.

Did this solution help you?

Share this solution#

References & review

This guide was prepared from primary project or distribution sources and reviewed on the date shown. This is an editorial source check, not evidence that a fix was reproduced on your hardware. Diagnostic log examples are synthetic fixtures. Version-dependent details must be checked against your installed release.