From: "Fabian Grünbichler" <f.gruenbichler@proxmox.com>
To: Proxmox VE development discussion <pve-devel@lists.proxmox.com>
Subject: Re: [pve-devel] [PATCH manager v3 2/2] 8 to 9 checks: check for removable grub-install
Date: Fri, 08 Aug 2025 10:10:26 +0200 [thread overview]
Message-ID: <1754640231.ttbnttqek4.astroid@yuna.none> (raw)
In-Reply-To: <20250807203004.336616-3-s.ivanov@proxmox.com>
On August 7, 2025 10:30 pm, Stoiko Ivanov wrote:
> some upgrades result in unbootable systems, which can be traced back
> to grub being installed in BOOTX64.efi, but not being upgraded by
> grub-install. Refer the cases to the output of
> `proxmox-boot-tool refresh` as it has a sensible check logic for those
> cases. Some affected systems printed the warning of proxmox-boot-tool,
> but it was lost in the large output of the dist-upgrade.
>
> Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
> ---
> PVE/CLI/pve8to9.pm | 11 ++++++++++-
> 1 file changed, 10 insertions(+), 1 deletion(-)
>
> diff --git a/PVE/CLI/pve8to9.pm b/PVE/CLI/pve8to9.pm
> index 6381e62f..c2e830a9 100644
> --- a/PVE/CLI/pve8to9.pm
> +++ b/PVE/CLI/pve8to9.pm
> @@ -1569,6 +1569,7 @@ sub check_bootloader {
> return;
> }
>
> + my $boot_ok = 1;
> if (-f "/etc/kernel/proxmox-boot-uuids") {
> if (!$upgraded) {
> log_skip("not yet upgraded, systemd-boot still needed for bootctl");
> @@ -1587,13 +1588,21 @@ sub check_bootloader {
> . " boot-related packages. Remove 'systemd-boot' See"
> . " https://pve.proxmox.com/wiki/Upgrade_from_8_to_9#sd-boot-warning for more information."
> );
> + $boot_ok = 0;
> }
> if (!-f "/usr/share/doc/grub-efi-amd64/changelog.Debian.gz") {
> log_warn("System booted in uefi mode but grub-efi-amd64 meta-package not installed,"
> . " new grub versions will not be installed to /boot/efi! Install grub-efi-amd64."
> );
> + $boot_ok = 0;
> + }
> + if (-f "/boot/efi/EFI/BOOT/BOOTX64.efi") {
> + log_warn("Removable bootloader found at '/boot/efi/EFI/BOOT/BOOTX64.efi' Check the"
> + . " output of `proxmox-boot-tool refresh` if further action is needed.");
why not run the debconf command here? we already did 90% of the required
checks if we end up here:
1. system is EFI booted
2. removable entry on ESP exists
3: MISSING: `debconf show --db configdb grub-efi-amd64 grub-pc | grep 'force_efi_extra_removable'`
we just need to query debconf to see if action actually needs to be taken.
without that last step, this will now warn *for all LVM systems*, even
those that are properly set up..
if we want to go the extra mile, we could also check that the binaries
actually match what is currently installed package-wise, but that might
get complicated in the face of shim..
> + $boot_ok = 0;
this is dead code
> return;
or this is, please only do either ;)
> - } else {
> + }
> + if ($boot_ok) {
> log_pass("bootloader packages installed correctly");
> }
> }
> --
> 2.39.5
>
>
>
> _______________________________________________
> pve-devel mailing list
> pve-devel@lists.proxmox.com
> https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel
>
>
>
_______________________________________________
pve-devel mailing list
pve-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel
prev parent reply other threads:[~2025-08-08 8:09 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-08-07 20:30 [pve-devel] [PATCH manager v3 0/2] 8 to 9 checks: improve boot-loader warnings Stoiko Ivanov
2025-08-07 20:30 ` [pve-devel] [PATCH manager v3 1/2] 8 to 9 checks: do not ask bootctl if systemd-boot is used Stoiko Ivanov
2025-08-07 20:30 ` [pve-devel] [PATCH manager v3 2/2] 8 to 9 checks: check for removable grub-install Stoiko Ivanov
2025-08-08 8:10 ` Fabian Grünbichler [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1754640231.ttbnttqek4.astroid@yuna.none \
--to=f.gruenbichler@proxmox.com \
--cc=pve-devel@lists.proxmox.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox