[systemd-devel] sd-boot on Fedora 30?

Zbigniew Jędrzejewski-Szmek zbyszek at in.waw.pl
Sat Aug 24 09:51:45 UTC 2019


On Fri, Aug 23, 2019 at 11:43:43AM -0700, Filipe Brandenburger wrote:
> Hi,
> 
> I've been trying to get sd-boot to work on Fedora 30, made some progress
> but not fully there yet...
> 
> First I found my partition GPT type in /boot was incorrect and bootctl was
> trying to use /boot/efi instead. Ok, that fixed, now I get a list of
> kernels.

What fstype is /boot? If it's ext4, then it will not be read by sd-boot.

> But whenever I boot, I only get the "Reboot Into Firmware Interface" menu
> entry and nothing else...
> 
> I imagine this might be related to the Grub entries:
> 
> $ sudo bootctl list
> /boot/loader/entries/4d3fcddc096748c4a398037699515189-5.2.8-200.fc30.x86_64.conf:7:
> Unknown line "id", ignoring.
> /boot/loader/entries/4d3fcddc096748c4a398037699515189-5.2.8-200.fc30.x86_64.conf:8:
> Unknown line "grub_users", ignoring.
> /boot/loader/entries/4d3fcddc096748c4a398037699515189-5.2.8-200.fc30.x86_64.conf:9:
> Unknown line "grub_arg", ignoring.
> /boot/loader/entries/4d3fcddc096748c4a398037699515189-5.2.8-200.fc30.x86_64.conf:10:
> Unknown line "grub_class", ignoring.
>         title: Fedora (5.2.8-200.fc30.x86_64) 30 (Workstation Edition)
> (default)
>            id: 4d3fcddc096748c4a398037699515189-5.2.8-200.fc30.x86_64
>        source:
> /boot/loader/entries/4d3fcddc096748c4a398037699515189-5.2.8-200.fc30.x86_64.conf
>       version: 5.2.8-200.fc30.x86_64
>         linux: /vmlinuz-5.2.8-200.fc30.x86_64
>        initrd: /initramfs-5.2.8-200.fc30.x86_64.img
>       options: $kernelopts
> 
> I tried to at least fix the $kernelopts one, with grubby --args="..."
> adding a dummy argument just to deduplicate it from the grubenv contents,
> but still couldn't boot from there...
> 
> Even if I fix that, looks like new kernels installed would trigger
> /usr/lib/kernel/install.d/20-grub.install and probably mess up that setup
> (do I have to mask or remove it completely?)
> 
> Fedora's BLS document unfortunately doesn't mention sd-boot at all :-(
> https://fedoraproject.org/wiki/Changes/BootLoaderSpecByDefault
> 
> Anyways, if anyone has hints of what I could try next, I'd be quite
> interested to know. (Perhaps adding some docs to Fedora wiki would be
> pretty helpful too!) I thought I'd ask here first... If I don't hear back,
> I might try to ask on Fedora lists instead.

Unfortunately what the grub people call BLS is not the real thing.
For reasons I still don't quite understand, they decided to make their
file format incompatible. (That they chose different file paths, that
is understandable, because they wanted to use /boot and retain compatibility
with old installations. But this is not what causes incompatibilities with
sd-boot. It's the gratuitous syntax changes in entry files.)

To get sd-boot working on Fedora, the easiest option is to get rid of
boot loader entries in /boot, and make sure kernels are installed to
/boot/efi.

Zbyszek


More information about the systemd-devel mailing list