F44 Change Proposal: BtrfsBootForCloud [SelfContained]

BtrfsBootForCloud

Wiki

Announced

This is a proposed Change for Fedora Linux.
This document represents a proposed Change. As part of the Changes process, proposals are publicly announced in order to receive community feedback. This proposal will only be implemented if approved by the Fedora Engineering Steering Committee.

Summary :open_book:

Eliminate the separate /boot partition on Fedora Cloud images

Owner :open_book:

Detailed Description :open_book:

The images produced by Fedora Cloud for Cloud platforms and Vagrant will drop the separate /boot in favor of a Btrfs subvolume. This will not apply to UEFI-UKI and s390x Cloud images due to limitations of those platforms.

Feedback :open_book:

Benefit to Fedora :open_book:

Fedora Cloud Edition is typically deployed as images of fixed sizes and grown on deployment, so it is attractive for us to minimize the footprint of the image up-front. Since Fedora Cloud images do not rely on grubenv features like the [[Changes/HiddenGrubMenu|GRUB Hidden Menu]] feature (which requires resolving [2372973 – GRUB is unable to use bootloader header space for grubenv on btrfs (patch available) rhbz#2372973] first), we can easily consolidate the bootloader data on the Btrfs volume. By using a Btrfs subvolume, it can be trivially omitted from any snapshot mechanisms used on the deployment while avoiding space contention for boot data and the rest of the operating environment data.

Scope :open_book:

  • Proposal owners: Merge [Making sure you're not a bot! fedora-kiwi-descriptions#228]

  • Other developers: N/A

  • Trademark approval: N/A (not needed for this Change)

  • Alignment with the Fedora Strategy: N/A (not needed for this Change)

Upgrade/compatibility impact :open_book:

There are no compatibility impacts, as this only affects new Cloud deployments with Fedora 44 or higher.

Early Testing (Optional) :open_book:

N/A

How To Test :open_book:

Once the kiwi-descriptions PR is merged, images should be available in the new configuration. Just boot them in the platform of your choice to test.

User Experience :open_book:

This should be transparent to users.

Dependencies :open_book:

N/A

Contingency Plan :open_book:

  • Contingency mechanism: Revert the pull request to go back to separate /boot volume.
  • Contingency deadline: Final Freeze
  • Blocks release? Yes

Documentation :open_book:

N/A (not a System Wide Change)

Release Notes :open_book:

Fedora Cloud images (except the UEFI-UKI images) on all architectures except IBM Z systems no longer have a separate /boot partition, and instead now ship /boot as a subvolume in the main Btrfs operating system volume. This allows for much better space utilization and smaller images.

Last edited by @alking 2025-10-16T19:39:42Z

Last edited by @alking 2025-10-16T19:39:42Z

How do you feel about the proposal as written?

  • Strongly in favor
  • In favor, with reservations
  • Neutral
  • Opposed, but could be convinced
  • Strongly opposed
0 voters

If you are in favor but have reservations, or are opposed but something could change your mind, please explain in a reply.

We want everyone to be heard, but many posts repeating the same thing actually makes that harder. If you have something new to say, please say it. If, instead, you find someone has already covered what you’d like to express, please simply give that post a :heart: instead of reiterating. You can even do this by email, by replying with the heart emoji or just “+1”. This will make long topics easier to follow.

Please note that this is an advisory “straw poll” meant to gauge sentiment. It isn’t a vote or a scientific survey. See About the Change Proposals category for more about the Change Process and moderation policy.

I’m leary of this for the reasons Simo mentioned on the devel list…

We are depending on btrfs handling code in grub to not mess up things on the main storage. :frowning:

Considering the GRUB Btrfs driver is a read-only driver, I think that’s fairly safe. It has also been in use in openSUSE for over a decade, so I consider it well-tested as well.

I’m not for this change.

I’m not sure there’s much point rehashing all the issues brought up on the mailing list, but I’ll just add that I’d really like to see the Cloud images move to UKIs.

I do think we could do away with the extended boot partition, though, so I guess I agree with the “let’s not do a separate boot partition” bit.

Can someone link to the discussion? I’m not finding it in neither devel nor cloud mailing lists archives.

It crossed several subthreads of the increasing the size of boot partition thread so it was kind of easy to miss.

1 Like