I think dynamically mounted /boot is a separate conversation. It's only 
relevant here in that if x-systemd.automount,noauto behavior is desired for 
/boot, then for sure that means we need "a better way" for the EFI System 
partition because we can't have nested automounts.

As for resources, the automount is super fast. As in, I can't tell it's not 
already mounted, even when fsck.fat is used at first mount time. All Fedora 
products use systemd, which is what implements this. So I think that's pretty 
minimal.

The two easy changes currently on the table for /boot/efi apply only to 
anaconda:

1. Do run fsck on the EFI System partition. We don't now.
https://bugzilla.redhat.com/show_bug.cgi?id=1077917
2. Change EFI System partition mount option to include both 
x-systemd.automount,noauto.
https://bugzilla.redhat.com/show_bug.cgi?id=1077984

These changes significantly reduce the likelihood of accumulating ESP 
corruption, and hopefully fixing it in time if it does occur. But this doesn't 
solve all the problems, only the corruption angle.

The real solution is to:

1. Anaconda always creates ESPs on each selected device for install.
2. Anaconda always installs bootloader binaries to each selected devices' ESP.
3. Anaconda writes a simple one-time static config, the only variable data are 
/boot volume UUID, and path prefix pointing to the updated configuration 
file(s), as EFI/fedora/grub.cfg.
4. Anaconda
+ grub2-mkconfig -o /boot/grub2/grub.cfg
- grub2-mkconfig -o /boot/efi/EFI/fedora/grub.cfg

** By virtue of putting grub.cfg on /boot again, if /boot is on md or Btrfs 
raid, we get bootloader configuration file syncing for "free" across all disks. 
The disk ESP contains only generic information so it's also much easier to 
restore, simple copy is all that's needed. Something one day a DE could do when 
we ask it to rebuild a replacement raid member device.

5. Bootloader package change to mount each ESP and update them; if bootloader 
updatability is considered important.

6. Now we can get rid of /boot/efi and any need for persistently mounted ESP.

X. Set x-systemd.automount,noauto on /boot. This is not part of this RFC/RFE, 
but could be seen as making it easy to go down this road if we want since it 
only means making an fstab change.


Chris Murphy
-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Reply via email to