Hi everyone
I'm planning to upgrade the boot drive on my Proxmox VE server from a SATA SSD to a new NVMe SSD. I've spent some time researching the best method and have put together this plan. I would be very grateful if the community could review my plan and point out any potential issues or "gotchas" I might have missed.
Current System State
Proxmox VE Version: 8.4.14
Storage Setup: Single boot disk with LVM, root filesystem is ext4.
Source Disk:
Destination Disk:
This tells me my system was set up with the `grub-install` method. My plan includes converting to the `proxmox-boot-tool` during the migration for convenience.
The plan
Backup
1. Full backups of all VMs/CTs.
2. Backup `/etc`.
3. Shut down all guests VMs/CTs
Partitioning & LVM Data Migration (Online)
1. Partition the new NVMe drive to have a similar layout (BIOS boot, EFI, LVM).
2. Perform the LVM migration.
Bootloader Migration & Conversion to `proxmox-boot-tool`
This is the part I'm looking to get some feedback. The goal is to make `/dev/nvme0n1p2` the new managed ESP.
1. Format the new EFI partition.
2. Update `/etc/fstab` to point to the new EFI partition.
Get the UUID of the new partition
Edit /etc/fstab and replace the line for /boot/efi with the UUID of /dev/nvme0n1p2
3. Initialize the new ESP with `proxmox-boot-tool`.
Finalization
1. Reboot the server.
2. Enter BIOS/UEFI setup.
3. Change the boot order to prioritize the "UEFI: Samsung SSD 990 PRO".
Dies anybody see any issues with this approach?
My hypervisor does have some stuff installed on it that makes me want to prevent rei stalling it (borgmatic backups, mail relay, zfs storage pool snapshot ting with sanoid, etc)
I'm planning to upgrade the boot drive on my Proxmox VE server from a SATA SSD to a new NVMe SSD. I've spent some time researching the best method and have put together this plan. I would be very grateful if the community could review my plan and point out any potential issues or "gotchas" I might have missed.
Current System State
Proxmox VE Version: 8.4.14
Storage Setup: Single boot disk with LVM, root filesystem is ext4.
Source Disk:
/dev/sda (232.9G Samsung SSD 840)Destination Disk:
/dev/nvme0n1 (2TB Samsung SSD 990 PRO)proxmox-boot-tool statusRe-executing '/usr/sbin/proxmox-boot-tool' in new private mount namespace..E: /etc/kernel/proxmox-boot-uuids does not exist.This tells me my system was set up with the `grub-install` method. My plan includes converting to the `proxmox-boot-tool` during the migration for convenience.
The plan
Backup
1. Full backups of all VMs/CTs.
2. Backup `/etc`.
3. Shut down all guests VMs/CTs
Partitioning & LVM Data Migration (Online)
1. Partition the new NVMe drive to have a similar layout (BIOS boot, EFI, LVM).
sgdisk --zap-all /dev/nvme0n1sgdisk --new=1:2048:4095 --typecode=1:ef02 --change-name=1:"BIOS boot" /dev/nvme0n1sgdisk --new=2:4096:2099199 --typecode=2:ef00 --change-name=2:"EFI System" /dev/nvme0n1sgdisk --new=3:2099200:0 --typecode=3:8e00 --change-name=3:"Linux LVM" /dev/nvme0n1partprobe /dev/nvme0n12. Perform the LVM migration.
pvcreate /dev/nvme0n1p3vgextend pve /dev/nvme0n1p3pvmove /dev/sda3vgreduce pve /dev/sda3pvremove /dev/sda3Bootloader Migration & Conversion to `proxmox-boot-tool`
This is the part I'm looking to get some feedback. The goal is to make `/dev/nvme0n1p2` the new managed ESP.
1. Format the new EFI partition.
proxmox-boot-tool format /dev/nvme0n1p22. Update `/etc/fstab` to point to the new EFI partition.
Get the UUID of the new partition
blkid /dev/nvme0n1p2Edit /etc/fstab and replace the line for /boot/efi with the UUID of /dev/nvme0n1p2
3. Initialize the new ESP with `proxmox-boot-tool`.
umount /boot/efimount /boot/efiproxmox-boot-tool init /dev/nvme0n1p2proxmox-boot-tool refreshFinalization
1. Reboot the server.
2. Enter BIOS/UEFI setup.
3. Change the boot order to prioritize the "UEFI: Samsung SSD 990 PRO".
Dies anybody see any issues with this approach?
My hypervisor does have some stuff installed on it that makes me want to prevent rei stalling it (borgmatic backups, mail relay, zfs storage pool snapshot ting with sanoid, etc)
Last edited: