Systemd Lands Support For "XBOOTLDR" Extended Boot Loader
Systemd has just merged support for the "Extended Boot Loader" partition, a.k.a. "XBOOTLDR", that is their bootloader specification they hope will allow Linux distribution vendors to better support dual/multi-boot setups.
XBOOTLDR is an alternative to the conventional EFI System Partition (ESP) for storing system boot information for bringing up an operating system. Their specification tries to make Linux system booting more robust, better handle multiple operating systems on a single disk, drop-in directory handling to avoid potentially clashing with another OS, and better unified support. This is an alternative or somewhat complementary to EFI boot menu logic.
The XBOOTLDR support in systemd includes the necessary sd-boot support, bootctl support for being able to list now ESPs and XBOOTLDRs, the systemd-gpt-auto-generator can now deal with XBOOTLDR partitions, and other bits.
This systemd Extended Boot Loader specification is outlined here -- it spells everything out why this spec was created and the shortcomings from the minds of systemd developers in the UEFI boot logic.
Implementing their specification tacked on just under two thousand lines of code to systemd as of this commit. That commit, Lennart Poettering says, implements "100%" of the specification.
XBOOTLDR is an alternative to the conventional EFI System Partition (ESP) for storing system boot information for bringing up an operating system. Their specification tries to make Linux system booting more robust, better handle multiple operating systems on a single disk, drop-in directory handling to avoid potentially clashing with another OS, and better unified support. This is an alternative or somewhat complementary to EFI boot menu logic.
The XBOOTLDR support in systemd includes the necessary sd-boot support, bootctl support for being able to list now ESPs and XBOOTLDRs, the systemd-gpt-auto-generator can now deal with XBOOTLDR partitions, and other bits.
This systemd Extended Boot Loader specification is outlined here -- it spells everything out why this spec was created and the shortcomings from the minds of systemd developers in the UEFI boot logic.
TL;DR: Currently there’s little cooperation between multiple distributions in dual-boot (or triple, … multi-boot) setups, and we’d like to improve this situation by getting everybody to commit to a single boot configuration format that is based on drop-in files, and thus is robust, simple, works without rewriting configuration files and is free of namespace clashes.
Implementing their specification tacked on just under two thousand lines of code to systemd as of this commit. That commit, Lennart Poettering says, implements "100%" of the specification.
81 Comments