[pve-devel] [PATCH pve-kernel-meta/pve-installer v3] improve boot-mode switching

Stoiko Ivanov s.ivanov at proxmox.com
Fri Mar 11 20:05:38 CET 2022


v2->v3:
* rebased on master
* added Thomas' suggestion of not clobbering an existing
  /etc/kernel/proxmox-boot-manual-kernels
* fixed a typo in promox-boot/functions (proxmox-boot-boot-manual-kernels)
* gave the installer another succesful try (with btrfs raid1)

original cover-letter for the v2:
these patches are still based on v3 of the pin/unpin addtion [1].
Not sending the pin/unpin again, since the feedback was mostly positive and
I think Thomas had already some improvements on top of it prepared locally.

changes v1->v2:
* added a fix for #3729 to pve-kernel-meta - not directly related to the
  series - but since the series moves the affected lines around quite a bit
  I thought we can merge them together (can gladly send it on top of master)
* else mostly incorporated Fabian's feedback - huge thanks!
* comments where appropriate are added to the individual patches

original cover-letter for the v1:
This patchset is the result from the discussion on the rfc for using grub as
only boot loader [0].

The patches for pve-kernel-meta are based on top of the v3 of the
`pin/unpin` addition [1].

The patches for pve-installer are independent from the pve-kernel-meta ones
(my tests used the current PVE 7.1 ISO w/o updating the pve-kernel-helper
package) - but I still consider them linked.

changes from the rfc:
* instead of using grub everywhere - we now use systemd-boot always for efi
  systems and leave grub only for legacy booted systems
* instead of unconditionally installing the boot-loaders for both modes on
  all ESPs users now can opt-in to installing the boot-loader for the other
  bootmode (both are updated if their configs are present, by default we
  only install the boot-loader for the current boot mode)

Tested the pve-kernel-meta with 3 VMs (ZFS+uefi, ZFS+legacy, ext4+uefi) and
switching boot-modes (after the necessary preparations).
Tested the pve-installer by scping proxinstall into a VM and installing
on btrfs+uefi, ext4+uefi, btrfs+legacy

[0] https://lists.proxmox.com/pipermail/pve-devel/2022-February/051562.html
[1] https://lists.proxmox.com/pipermail/pve-devel/2022-February/051732.html


pve-kernel-meta:
Stoiko Ivanov (8):
  rename pve-efiboot-manual-kernels to proxmox-boot-manual-kernels
  proxmox-boot: add reinit subcommand
  proxmox-boot: add helpers to check for bootloader configs
  proxmox-boot: refresh based on bootloader config instead of bootmode
  proxmox-boot: remove now obsolete EFI/proxmoxdir if it exists
  proxmox-boot: init bootloaders based on esp contents
  proxmox-boot: allow to manually specify bootloader
  proxmox-boot: fix #3729 add --graceful to bootctl invocation

 bin/grub-install-wrapper          |  19 +-----
 bin/proxmox-boot-tool             | 107 ++++++++++++++++++++++++------
 debian/pve-kernel-helper.postinst |   4 ++
 proxmox-boot/functions            |  18 ++++-
 proxmox-boot/zz-proxmox-boot      |  84 +++++++++--------------
 5 files changed, 143 insertions(+), 89 deletions(-)

pve-installer:
Stoiko Ivanov (2):
  remove /mnt/hostrun after install
  use proxmox-boot-tool for all uefi installs

 proxinstall | 81 ++++++++++-------------------------------------------
 1 file changed, 15 insertions(+), 66 deletions(-)

-- 
2.30.2






More information about the pve-devel mailing list