-
Notifications
You must be signed in to change notification settings - Fork 192
composefs: /boot not mounted after to-existing-root install (missing fstab entry) #2120
Description
In my test, install composefs image into package mode machine with podman run --rm --tls-verify=false --privileged --pid=host -v /:/target -v /dev:/dev -v /var/lib/containers:/var/lib/containers --security-opt label=type:unconfined_t localhost/bootc:tmt bootc install to-existing-root --target-transport containers-storage --composefs-backend --allow-missing-verity .
After bootc install to-existing-root --composefs-backend with GRUB bootloader, the system boots successfully but /boot is not mounted. This causes bootc status (and likely bootc upgrade) to fail when trying to open /boot/grub2/.
$ ls -la /boot/
total 8
drwxr-xr-x. 2 root root 27 Apr 2 23:58 .
drwxr-xr-x. 13 root root 358 Apr 2 23:58 ..
$ ls -la /boot/grub2/
grub2 dir missing
$ findmnt /boot
(no output — /boot is not mounted)Full log: https://artifacts.osci.redhat.com/testing-farm/b535151d-d764-4928-91e3-18718047540a/
The composefs install path in install_to_filesystem_impl() (crates/lib/src/install.rs ~line 1963-2012) does not write a /boot entry to /etc/fstab. The ostree path does this at line 1203-1212.
to-disk does not have this issue because /boot is just a directory on the root partition (/sysroot/boot) and /sysroot is always mounted, /sysroot/boot is accessible. No fstab entry needed — it's not a separate partition.
But for to-disk Tpm2Luks (separate /boot partition), that might have same issue.