-
Notifications
You must be signed in to change notification settings - Fork 59
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
bootupd fails on mirrored boot disks #1485
Comments
(One confusion I had here is that the relevant systemd unit was removed shortly after shipping it in coreos/fedora-coreos-config@ff39c7d Anyways right...one thing that probably would have helped here is to have that unit actively block upgrades if it failed instead of just being entirely disconnected from the chain of zincati/rpm-ostree. Fixing that probably wants better rpm-ostree/bootupd integration, and then for zincati to drive that. But, that's just a mechanism to detect and block upgrades in this scenario, obviously we should fix this case too, which has bootupd issue as you've already linked in coreos/bootupd#132 |
We don't have a good way to signal that a machine is no longer updating, unless someone happens to SSH in and look, so it's a tough call. There's an argument that it's better to break a machine than to quietly stop applying security updates. |
NO If we didn't have barriers then every More context on this in #1441 |
At this point do we have any workarounds we can document so we can help @jbpratt and others recover their systems? |
It should be possible to fix the bootloader by booting the old kernel, mounting the EFI partition on each disk, and manually copying in the new shim and GRUB. I'm not sure whether that would confuse bootupd, though. |
Indeed, that should work. Rather than copying the files by hand, you can do an invocation similar to what bootupd does. Here's a sample script of what all this would look like: sudo mount /dev/disk/by-label/esp-1 /boot/efi
sudo cp -rp /usr/lib/bootupd/updates/EFI /boot/efi
sudo umount /boot/efi
sudo mount /dev/disk/by-label/esp-2 /boot/efi
sudo cp -rp /usr/lib/bootupd/updates/EFI /boot/efi
sudo umount /boot/efi bootupd should normally know how to reuse existing mounts, but I can't get it to work in a quick test (and anyway, the |
@jbpratt - does that workaround work for you? |
hey @dustymabe @jlebon that did seem to work! Thank you for the help 🐱
|
Describe the bug
Follow up issue to https://discussion.fedoraproject.org/t/bootctl-update-fails-with-failed-to-update-efi-failed-to-find-esp-device/81663/3
coreos/bootupd#132
Reproduction steps
Install
37.20230322.3.0
with mirrored boot disks and try to upgradeExpected behavior
Successfully upgrading!
Actual behavior
Fails to boot with
System details
Bare metal, arm64
Butane or Ignition config
No response
Additional information
No response
The text was updated successfully, but these errors were encountered: