teams/cloud: Drop /boot partition and use a Btrfs subvolume for /boot

This lets us free up the space allocated for the partition and gives
us dynamically allocated space for boot data like we have with the
rest of the operating system.

We do not do this for s390x because zipl does not support it.

Reference: https://fedoraproject.org/wiki/Changes/BtrfsBootForCloud
This commit is contained in:
Neal Gompa
2025-12-09 13:50:44 -05:00
parent 1e74928eb0
commit edebd133af
2 changed files with 22 additions and 11 deletions
+18 -9
View File
@@ -33,12 +33,13 @@
filesystem="btrfs" btrfs_root_is_subvolume="true" btrfs_set_default_volume="false" fsmountoptions="compress=zstd:1" filesystem="btrfs" btrfs_root_is_subvolume="true" btrfs_set_default_volume="false" fsmountoptions="compress=zstd:1"
kernelcmdline="no_timer_check console=tty1 console=ttyS0,115200n8 earlyprintk=ttyS0 systemd.firstboot=off" kernelcmdline="no_timer_check console=tty1 console=ttyS0,115200n8 earlyprintk=ttyS0 systemd.firstboot=off"
devicepersistency="by-uuid" devicepersistency="by-uuid"
bootpartition="true" bootpartsize="2000" bootfilesystem="ext4" efipartsize="100" firmware="uefi" bootpartition="false" efipartsize="100" firmware="uefi"
rootfs_label="fedora" rootfs_label="fedora"
> >
<bootloader name="grub2" bls="true" console="serial" timeout="0"/> <bootloader name="grub2" bls="true" console="serial" timeout="0"/>
<systemdisk> <systemdisk>
<volume name="@root=root"/> <volume name="@root=root"/>
<volume name="boot" parent="/"/>
<volume name="home" parent="/"/> <volume name="home" parent="/"/>
<volume name="var" parent="/"/> <volume name="var" parent="/"/>
</systemdisk> </systemdisk>
@@ -53,12 +54,13 @@
filesystem="btrfs" btrfs_root_is_subvolume="true" btrfs_set_default_volume="false" fsmountoptions="compress=zstd:1" filesystem="btrfs" btrfs_root_is_subvolume="true" btrfs_set_default_volume="false" fsmountoptions="compress=zstd:1"
kernelcmdline="no_timer_check console=tty1 console=ttyAMA0,115200n8 earlyprintk=ttyAMA0 systemd.firstboot=off" kernelcmdline="no_timer_check console=tty1 console=ttyAMA0,115200n8 earlyprintk=ttyAMA0 systemd.firstboot=off"
devicepersistency="by-uuid" devicepersistency="by-uuid"
bootpartition="true" bootpartsize="2000" bootfilesystem="ext4" efipartsize="100" firmware="uefi" bootpartition="false" efipartsize="100" firmware="uefi"
rootfs_label="fedora" rootfs_label="fedora"
> >
<bootloader name="grub2" console="serial" timeout="0"/> <bootloader name="grub2" console="serial" timeout="0"/>
<systemdisk> <systemdisk>
<volume name="@root=root"/> <volume name="@root=root"/>
<volume name="boot" parent="/"/>
<volume name="home" parent="/"/> <volume name="home" parent="/"/>
<volume name="var" parent="/"/> <volume name="var" parent="/"/>
</systemdisk> </systemdisk>
@@ -73,13 +75,14 @@
filesystem="btrfs" btrfs_root_is_subvolume="true" btrfs_set_default_volume="false" fsmountoptions="compress=zstd:1" filesystem="btrfs" btrfs_root_is_subvolume="true" btrfs_set_default_volume="false" fsmountoptions="compress=zstd:1"
kernelcmdline="no_timer_check console=tty1 console=ttyS0,115200n8 systemd.firstboot=off" kernelcmdline="no_timer_check console=tty1 console=ttyS0,115200n8 systemd.firstboot=off"
devicepersistency="by-uuid" devicepersistency="by-uuid"
bootpartition="true" bootpartsize="2000" bootfilesystem="ext4" efipartsize="100" firmware="uefi" bootpartition="false" efipartsize="100" firmware="uefi"
rootfs_label="fedora" rootfs_label="fedora"
> >
<bootloader name="grub2" bls="true" timeout="0"/> <bootloader name="grub2" bls="true" timeout="0"/>
<size unit="G">5</size> <size unit="G">5</size>
<systemdisk> <systemdisk>
<volume name="@root=root"/> <volume name="@root=root"/>
<volume name="boot" parent="/"/>
<volume name="home" parent="/"/> <volume name="home" parent="/"/>
<volume name="var" parent="/"/> <volume name="var" parent="/"/>
</systemdisk> </systemdisk>
@@ -93,13 +96,14 @@
filesystem="btrfs" btrfs_root_is_subvolume="true" btrfs_set_default_volume="false" fsmountoptions="compress=zstd:1" filesystem="btrfs" btrfs_root_is_subvolume="true" btrfs_set_default_volume="false" fsmountoptions="compress=zstd:1"
kernelcmdline="no_timer_check console=tty1 console=ttyAMA0,115200n8 systemd.firstboot=off" kernelcmdline="no_timer_check console=tty1 console=ttyAMA0,115200n8 systemd.firstboot=off"
devicepersistency="by-uuid" devicepersistency="by-uuid"
bootpartition="true" bootpartsize="2000" bootfilesystem="ext4" efipartsize="100" firmware="uefi" bootpartition="false" efipartsize="100" firmware="uefi"
rootfs_label="fedora" rootfs_label="fedora"
> >
<bootloader name="grub2" bls="true" timeout="0"/> <bootloader name="grub2" bls="true" timeout="0"/>
<size unit="G">5</size> <size unit="G">5</size>
<systemdisk> <systemdisk>
<volume name="@root=root"/> <volume name="@root=root"/>
<volume name="boot" parent="/"/>
<volume name="home" parent="/"/> <volume name="home" parent="/"/>
<volume name="var" parent="/"/> <volume name="var" parent="/"/>
</systemdisk> </systemdisk>
@@ -113,7 +117,7 @@
filesystem="btrfs" btrfs_root_is_subvolume="true" btrfs_set_default_volume="false" fsmountoptions="compress=zstd:1" filesystem="btrfs" btrfs_root_is_subvolume="true" btrfs_set_default_volume="false" fsmountoptions="compress=zstd:1"
kernelcmdline="no_timer_check console=ttyS0,38400n8d systemd.firstboot=off" kernelcmdline="no_timer_check console=ttyS0,38400n8d systemd.firstboot=off"
devicepersistency="by-uuid" devicepersistency="by-uuid"
bootpartition="true" bootpartsize="2000" bootfilesystem="ext4" efipartsize="100" firmware="uefi" bootpartition="false" efipartsize="100" firmware="uefi"
rootfs_label="fedora" rootfs_label="fedora"
> >
<bootloader name="grub2" bls="true" timeout="0"/> <bootloader name="grub2" bls="true" timeout="0"/>
@@ -121,6 +125,7 @@
<size unit="G">10</size> <size unit="G">10</size>
<systemdisk> <systemdisk>
<volume name="@root=root"/> <volume name="@root=root"/>
<volume name="boot" parent="/"/>
<volume name="home" parent="/"/> <volume name="home" parent="/"/>
<volume name="var" parent="/"/> <volume name="var" parent="/"/>
</systemdisk> </systemdisk>
@@ -134,7 +139,7 @@
filesystem="btrfs" btrfs_root_is_subvolume="true" btrfs_set_default_volume="false" fsmountoptions="compress=zstd:1" filesystem="btrfs" btrfs_root_is_subvolume="true" btrfs_set_default_volume="false" fsmountoptions="compress=zstd:1"
kernelcmdline="no_timer_check console=ttyAMA0,38400n8d systemd.firstboot=off" kernelcmdline="no_timer_check console=ttyAMA0,38400n8d systemd.firstboot=off"
devicepersistency="by-uuid" devicepersistency="by-uuid"
bootpartition="true" bootpartsize="2000" bootfilesystem="ext4" efipartsize="100" firmware="uefi" bootpartition="false" efipartsize="100" firmware="uefi"
rootfs_label="fedora" rootfs_label="fedora"
> >
<bootloader name="grub2" bls="true" timeout="0"/> <bootloader name="grub2" bls="true" timeout="0"/>
@@ -142,6 +147,7 @@
<size unit="G">10</size> <size unit="G">10</size>
<systemdisk> <systemdisk>
<volume name="@root=root"/> <volume name="@root=root"/>
<volume name="boot" parent="/"/>
<volume name="home" parent="/"/> <volume name="home" parent="/"/>
<volume name="var" parent="/"/> <volume name="var" parent="/"/>
</systemdisk> </systemdisk>
@@ -155,13 +161,14 @@
filesystem="btrfs" btrfs_root_is_subvolume="true" btrfs_set_default_volume="false" fsmountoptions="compress=zstd:1" filesystem="btrfs" btrfs_root_is_subvolume="true" btrfs_set_default_volume="false" fsmountoptions="compress=zstd:1"
kernelcmdline="no_timer_check console=tty1 console=ttyS0,115200n8 systemd.firstboot=off" kernelcmdline="no_timer_check console=tty1 console=ttyS0,115200n8 systemd.firstboot=off"
devicepersistency="by-uuid" devicepersistency="by-uuid"
bootpartition="true" bootpartsize="2000" bootfilesystem="ext4" efipartsize="100" firmware="uefi" bootpartition="false" efipartsize="100" firmware="uefi"
rootfs_label="fedora" rootfs_label="fedora"
> >
<bootloader name="grub2" bls="true" console="serial" timeout="0"/> <bootloader name="grub2" bls="true" console="serial" timeout="0"/>
<size unit="G">5</size> <size unit="G">5</size>
<systemdisk> <systemdisk>
<volume name="@root=root"/> <volume name="@root=root"/>
<volume name="boot" parent="/"/>
<volume name="home" parent="/"/> <volume name="home" parent="/"/>
<volume name="var" parent="/"/> <volume name="var" parent="/"/>
</systemdisk> </systemdisk>
@@ -175,13 +182,14 @@
filesystem="btrfs" btrfs_root_is_subvolume="true" btrfs_set_default_volume="false" fsmountoptions="compress=zstd:1" filesystem="btrfs" btrfs_root_is_subvolume="true" btrfs_set_default_volume="false" fsmountoptions="compress=zstd:1"
kernelcmdline="no_timer_check console=tty1 console=ttyAMA0,115200n8 systemd.firstboot=off" kernelcmdline="no_timer_check console=tty1 console=ttyAMA0,115200n8 systemd.firstboot=off"
devicepersistency="by-uuid" devicepersistency="by-uuid"
bootpartition="true" bootpartsize="2000" bootfilesystem="ext4" efipartsize="100" firmware="uefi" bootpartition="false" efipartsize="100" firmware="uefi"
rootfs_label="fedora" rootfs_label="fedora"
> >
<bootloader name="grub2" bls="true" console="serial" timeout="0"/> <bootloader name="grub2" bls="true" console="serial" timeout="0"/>
<size unit="G">5</size> <size unit="G">5</size>
<systemdisk> <systemdisk>
<volume name="@root=root"/> <volume name="@root=root"/>
<volume name="boot" parent="/"/>
<volume name="home" parent="/"/> <volume name="home" parent="/"/>
<volume name="var" parent="/"/> <volume name="var" parent="/"/>
</systemdisk> </systemdisk>
@@ -195,13 +203,14 @@
filesystem="btrfs" btrfs_root_is_subvolume="true" btrfs_set_default_volume="false" fsmountoptions="compress=zstd:1" filesystem="btrfs" btrfs_root_is_subvolume="true" btrfs_set_default_volume="false" fsmountoptions="compress=zstd:1"
kernelcmdline="no_timer_check console=tty1 console=ttyS0,115200n8 systemd.firstboot=off" kernelcmdline="no_timer_check console=tty1 console=ttyS0,115200n8 systemd.firstboot=off"
devicepersistency="by-uuid" devicepersistency="by-uuid"
bootpartition="true" bootpartsize="2000" bootfilesystem="ext4" firmware="ofw" bootpartition="false" firmware="ofw"
rootfs_label="fedora" rootfs_label="fedora"
> >
<bootloader name="grub2" bls="true" console="serial" timeout="0"/> <bootloader name="grub2" bls="true" console="serial" timeout="0"/>
<size unit="G">5</size> <size unit="G">5</size>
<systemdisk> <systemdisk>
<volume name="@root=root"/> <volume name="@root=root"/>
<volume name="boot" parent="/"/>
<volume name="home" parent="/"/> <volume name="home" parent="/"/>
<volume name="var" parent="/"/> <volume name="var" parent="/"/>
</systemdisk> </systemdisk>
+4 -2
View File
@@ -15,7 +15,7 @@
filesystem="btrfs" btrfs_root_is_subvolume="true" btrfs_set_default_volume="false" fsmountoptions="compress=zstd:1" filesystem="btrfs" btrfs_root_is_subvolume="true" btrfs_set_default_volume="false" fsmountoptions="compress=zstd:1"
kernelcmdline="no_timer_check console=tty1 console=ttyS0,115200n8" kernelcmdline="no_timer_check console=tty1 console=ttyS0,115200n8"
devicepersistency="by-uuid" devicepersistency="by-uuid"
bootpartition="true" bootpartsize="2000" bootfilesystem="ext4" efipartsize="100" firmware="uefi" bootpartition="false" efipartsize="100" firmware="uefi"
rootfs_label="fedora" rootfs_label="fedora"
> >
<bootloader name="grub2" bls="true" console="serial" timeout="1"/> <bootloader name="grub2" bls="true" console="serial" timeout="1"/>
@@ -23,6 +23,7 @@
<vagrantconfig provider="libvirt" virtualsize="5"/> <vagrantconfig provider="libvirt" virtualsize="5"/>
<systemdisk> <systemdisk>
<volume name="@root=root"/> <volume name="@root=root"/>
<volume name="boot" parent="/"/>
<volume name="home" parent="/"/> <volume name="home" parent="/"/>
<volume name="var" parent="/"/> <volume name="var" parent="/"/>
</systemdisk> </systemdisk>
@@ -36,7 +37,7 @@
filesystem="btrfs" btrfs_root_is_subvolume="true" btrfs_set_default_volume="false" fsmountoptions="compress=zstd:1" filesystem="btrfs" btrfs_root_is_subvolume="true" btrfs_set_default_volume="false" fsmountoptions="compress=zstd:1"
kernelcmdline="no_timer_check console=tty1 console=ttyS0,115200n8" kernelcmdline="no_timer_check console=tty1 console=ttyS0,115200n8"
devicepersistency="by-uuid" devicepersistency="by-uuid"
bootpartition="true" bootpartsize="2000" bootfilesystem="ext4" efipartsize="100" firmware="uefi" bootpartition="false" efipartsize="100" firmware="uefi"
rootfs_label="fedora" rootfs_label="fedora"
> >
<bootloader name="grub2" bls="true" console="serial" timeout="1"/> <bootloader name="grub2" bls="true" console="serial" timeout="1"/>
@@ -44,6 +45,7 @@
<vagrantconfig provider="virtualbox" virtualbox_guest_additions_present="true" virtualsize="5"/> <vagrantconfig provider="virtualbox" virtualbox_guest_additions_present="true" virtualsize="5"/>
<systemdisk> <systemdisk>
<volume name="@root=root"/> <volume name="@root=root"/>
<volume name="boot" parent="/"/>
<volume name="home" parent="/"/> <volume name="home" parent="/"/>
<volume name="var" parent="/"/> <volume name="var" parent="/"/>
</systemdisk> </systemdisk>