Public bug reported:

In /etc/grub.d/10_linux_zfs (built during install from 
util/grub.d/10_linux_zfs.in), get_dataset_info() tries to unmount mount 
locations starting with the logic
```
case "${etc_dir}" in /.zfs/snapshot/*/etc)
```

This process occasionally and silently fails while building /boot/grub/grub.cfg 
when running in FIPS mode (with FIPS kernels), which leaves the generated 
/boot/grub/grub.cfg without any kernel (linux ...) lines.
It appears that not all ZFS snapsshots that match the switch statement actually 
have an .../etc directory.

As ZFS is only an option in the Focal Desktop installer, this issue was
only tested with Focal running Canonical's FIPS packages.

In order to reproduce this issue in FIPS mode, the ubuntu-fips and fips-
initramfs-generic packages both need to implement a couple of patches
that haven't released yet. Without these two patches and without manual
intervention, the FIPS kernel will be unable to boot with a ZFS /boot
device. I can provide these additional patches -- please feel free to
reach out to me!

** Affects: grub2 (Ubuntu)
     Importance: Undecided
         Status: New

** Patch added: "Patch built for the grub2=2.04-1ubuntu26.13 package"
   
https://bugs.launchpad.net/bugs/1965983/+attachment/5571994/+files/grubcfg-zfs-snapshot-generation-failure.patch

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1965983

Title:
  ZFS snapshots without etc directory causes grub.cfg build failure

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/grub2/+bug/1965983/+subscriptions


-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to