From: Stoiko Ivanov <s.ivanov@proxmox.com>
To: pve-devel@lists.proxmox.com
Subject: [pve-devel] [PATCH 1/1] pve7to8: check for proper grub meta-package for bootmode
Date: Wed, 4 Oct 2023 14:05:58 +0200 [thread overview]
Message-ID: <20231004120558.382180-4-s.ivanov@proxmox.com> (raw)
In-Reply-To: <20231004120558.382180-1-s.ivanov@proxmox.com>
This should catch installations from our ISO on non-ZFS in uefi mode,
which won't get the updated grub efi binary installed upon upgrade,
because grub-pc is installed instead of grub-efi-amd64.
Adding this to pve7to8 should make this even more visible, than the
corresponding patch for promxox-kernel-helper (warnings printed during
regular package upgrades might be overlooked more easily than
a yellow line in the major upgrade checkscript)
The if/else order was chosen to limit the nesting level of the long
messages.
Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
---
PVE/CLI/pve7to8.pm | 39 +++++++++++++++++++++++----------------
1 file changed, 23 insertions(+), 16 deletions(-)
diff --git a/PVE/CLI/pve7to8.pm b/PVE/CLI/pve7to8.pm
index d1a71eff..2e2304ea 100644
--- a/PVE/CLI/pve7to8.pm
+++ b/PVE/CLI/pve7to8.pm
@@ -1302,29 +1302,36 @@ sub check_time_sync {
sub check_bootloader {
log_info("Checking bootloader configuration...");
- if (!$upgraded) {
- log_skip("not yet upgraded, no need to check the presence of systemd-boot");
- return;
- }
- if (! -f "/etc/kernel/proxmox-boot-uuids") {
- log_skip("proxmox-boot-tool not used for bootloader configuration");
+ if (! -d '/sys/firmware/efi') {
+ log_skip("System booted in legacy-mode - no need for additional packages");
return;
}
- if (! -d "/sys/firmware/efi") {
- log_skip("System booted in legacy-mode - no need for systemd-boot");
- return;
- }
-
- if ( -f "/usr/share/doc/systemd-boot/changelog.Debian.gz") {
- log_pass("systemd-boot is installed");
- } else {
+ if ( -f "/etc/kernel/proxmox-boot-uuids") {
+ if (!$upgraded) {
+ log_skip("not yet upgraded, no need to check the presence of systemd-boot");
+ return;
+ }
+ if ( -f "/usr/share/doc/systemd-boot/changelog.Debian.gz") {
+ log_pass("bootloader packages installed correctly");
+ return;
+ }
log_warn(
"proxmox-boot-tool is used for bootloader configuration in uefi mode"
- . "but the separate systemd-boot package, existing in Debian Bookworm is not installed"
- . "initializing new ESPs will not work until the package is installed"
+ . " but the separate systemd-boot package, existing in Debian Bookworm is not installed"
+ . " initializing new ESPs will not work until the package is installed"
+ );
+ return;
+ } elsif ( ! -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"
);
+ return;
+ } else {
+ log_pass("bootloader packages installed correctly");
}
}
--
2.39.2
next prev parent reply other threads:[~2023-10-04 12:06 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-10-04 12:05 [pve-devel] [PATCH kernel-helper/manager] check for fitting grub-meta package on uefi systems Stoiko Ivanov
2023-10-04 12:05 ` [pve-devel] [PATCH 1/2] proxmox-boot-tool: do not exit early in kernel-hook Stoiko Ivanov
2023-10-04 12:05 ` [pve-devel] [PATCH 2/2] proxmox-boot-tool: check if correct grub metapackage is installed Stoiko Ivanov
2023-10-09 7:07 ` Friedrich Weber
2023-10-04 12:05 ` Stoiko Ivanov [this message]
2023-10-09 7:11 ` [pve-devel] [PATCH 1/1] pve7to8: check for proper grub meta-package for bootmode Friedrich Weber
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=20231004120558.382180-4-s.ivanov@proxmox.com \
--to=s.ivanov@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.