** Description changed: [SRU Justification] SRU regression triggered by latent misconfiguration of grub on the host system, leading to a failure to boot due to ABI mismatch between /boot/grub/i386-pc which is updated, and the grub image in the MBR which is not [Test case] 1. Boot a system in BIOS mode. 2. Run sudo sed -i -e'/Name: grub-pc\/install_devices/,/Name/ s,Value: .*,Value: /dev/non-existent,' /var/cache/debconf/config.dat 3. Enable -proposed in apt sources.list. 4. Run sudo env DEBIAN_FRONTEND=noninteractive apt install grub-pc 5. Reboot 6. Confirm that the system boots successfully 7. Boot a system in UEFI mode. 8. Enable -proposed in apt sources.list. 9. Run sudo env DEBIAN_FRONTEND=noninteractive apt install grub-efi-amd64-signed 10. Confirm that the contents of /boot/efi/EFI/ubuntu have been updated with the current timestamp. - Failure to install new grub core to the specified device does not - correctly prevent upgrade to incompatible modules (LP: #1889509) + [Original description] + Failure to install new grub core to the specified device does not correctly prevent upgrade to incompatible modules (LP: #1889509) $ sudo debconf-get-selections |grep sda grub-pc grub-pc/install_devices_disks_changed multiselect /dev/sda grub-pc grub-pc/install_devices multiselect /dev/sda $ mount|grep nvme /dev/nvme0n1p1 on / type ext4 (rw,relatime,discard,data=ordered) $ ls /dev/sda ls: cannot access '/dev/sda': No such file or directory $ sudo env DEBIAN_FRONTEND=noninteractive apt full-upgrade -y ... Get:10 http://us-west-2.ec2.archive.ubuntu.com/ubuntu xenial-updates/main amd64 grub-pc-bin amd64 2.02~beta2-36ubuntu3.26 [891 kB] ... Installing for i386-pc platform. grub-install: error: cannot find a GRUB drive for /dev/sda. Check your device.map. Generating grub configuration file ... Found linux image: /boot/vmlinuz-4.4.0-1111-aws Found linux image: /boot/vmlinuz-4.4.0-1109-aws Found initrd image: /boot/initrd.img-4.4.0-1109-aws done ... # update-grub failed during the install but the return code is 0 $ echo $? 0 # The package is installed without apparent error, but the instance will fail to reboot (LP: #1889509) $ dpkg -l|grep grub-pc ii grub-pc 2.02~beta2-36ubuntu3.26 amd64 GRand Unified Bootloader, version 2 (PC/BIOS version) ii grub-pc-bin 2.02~beta2-36ubuntu3.26 amd64 GRand Unified Bootloader, version 2 (PC/BIOS binaries) # If I reboot it will fail to boot: Booting from Hard Disk 0... error: symbol `grub_calloc' not found. Entering rescue mode... grub rescue> _ --- Xenial in AWS (us-west-2 ami-060d1be0dd4526759 built on 20200611) The debconf for grub was not set to the correct device when cloud-init first ran (LP: #1877491) or when the fix for that was applied (LP: #1889555) The fact that grub-install fails during the upgrade but does not fail the package install (and cause a rollback) means that how we have a mismatch between grub core and modules which breaks boot (LP: #1889509).
-- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1889556 Title: grub-install failure does not fail package upgrade (and does not roll back to matching modules) To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/grub2/+bug/1889556/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs