[Bug 2054103] Re: grub-pc reinstallation throws a prompt asking the device it should install on for Noble
Mate Kukri
2054103 at bugs.launchpad.net
Fri Aug 2 15:50:57 UTC 2024
Performed the following Jammy to Noble upgrades with the u-r-u from
proposed:
* Cloud image upgrade: OK
- grub-{efi,pc}/cloud_style_installation not present before upgrade, set to true after upgrade
* Server install upgrade: OK
- grub-{efi,pc}/cloud_style_installation not present before upgrade, set to false after upgrade
Verification done.
** Tags removed: verification-needed verification-needed-noble
** Tags added: verification-done verification-done-noble
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to grub2 in Ubuntu.
https://bugs.launchpad.net/bugs/2054103
Title:
grub-pc reinstallation throws a prompt asking the device it should
install on for Noble
Status in cloud-images:
Fix Released
Status in grub2 package in Ubuntu:
Fix Released
Status in ubuntu-release-upgrader package in Ubuntu:
Invalid
Status in grub2 source package in Noble:
New
Status in ubuntu-release-upgrader source package in Noble:
Fix Committed
Bug description:
[ Impact ]
* We have changed GRUB2 packaging to have two installation modes,
"cloud style", and default.
* The cloud style one should be used, and is used by cloud images
starting with Noble.
* Pre-noble cloud images don't have this option set, thus the need
for an u-r-u quirk to set it on upgrade.
[ Test Plan ]
* Use debconf-show grub-pc, and look for
grub-{pc,efi}/cloud_style_installation
* Test upgrading Jammy -> Noble on a non-cloud install (e.g. installed from an
ISO), ensure the debconf option *is not set* afterwards.
* Test upgrading Jammy -> Noble on a cloud install (e.g. a system deployed from
a jammy cloud image), ensure the debconf option *is set* afterwards.
* Note that this was already verified, so this task is about re-verification
after the updated u-r-u is in noble-proposed.
[ Where problems could occur ]
* This SRU is only about the release upgrader change, thus impact is
limited to upgrades to Noble.
* If an installation that cannot use the cloud mechanism in GRUB has
'/etc/cloud/build.info' present, it could cause grub2 postinst to fail.
* This is rather unlikely, but a theoretically possible scenario.
[ Other Info ]
* See the original bug description below.
================================================================================
grub-pc requires knowing what device to grub-install on, but when cloud images are generated, the device on the deployment target is never known. And so when the package is reinstalled (for example, when unminimizing the minimized image), the user gets that prompt, asking where to install the grub, when this should happen non-interactively, for example, by determining where the grub was first installed.
Interestingly, this issue always existed, however it was masked by the
following timeline:
In July 2020, it was discovered that certain scenarios can cause grub-
pc installation to fail, and an emergency SRU
https://bugs.launchpad.net/ubuntu/+source/grub2/+bug/1889556 disabled
grub-pc re-installation on upgrade as a workaround.
Before the commit https://salsa.debian.org/grub-
team/grub/-/commit/8d809abe752712cb020e2e95fe21d5832bea52f8 got merged
into Ubuntu, grub-pc/install-devices being unset in debconf was
acceptable in practice. This was indeed unset and still is for cloud
images.
In Dec 2021, grub2 2.06-2ubuntu1 was uploaded containing the
previously mentioned commit. But as a result of the above emergency
SRU, that upload managed to silently change the status quo without it
ever being noticed.
In December 2023, the grub-pc installation workaround was finally
removed in
https://bugs.launchpad.net/ubuntu/+source/grub2/+bug/2043995 exposing
grub-pc package upgrade failures in cloud images where grub-
pc/install-devices in debconf was never in-fact set.
The plausible solution is to develop something to set the grub-
pc/install-devices debconf entry on first boot in a cloud deployment,
which would allow upgrades to function like before.
To manage notifications about this bug go to:
https://bugs.launchpad.net/cloud-images/+bug/2054103/+subscriptions
More information about the foundations-bugs
mailing list