12 October 2025

Changing Proxmox Boot Devices

I wanted to use the Intel SSDs as the boot devices in my replacement server. This meant I needed to migrate back to the 2.5" HDDs.


Prep Work

Ensure that autoexpand is off

  • zpool get autoexpand rpool

NAME   PROPERTY    VALUE   SOURCE

rpool  autoexpand  off     default


Adding the 2.5" HDDs

For all the below examples /dev/sda is one of the existing boot drives and /dev/sde and /dev/sdf are the new drives.


Install the hard drives

  • Power-off the system first if you don't have hot swap


Copy the partition tables

  • sfdisk -d /dev/sda | grep -v last-lba > ssd_part_table
  • sed -e '/^label-id:/d' -e 's/,\s*uuid=[-0-9A-F]*//g' ssd_part_table | sfdisk /dev/sde
  • sed -e '/^label-id:/d' -e 's/,\s*uuid=[-0-9A-F]*//g' ssd_part_table | sfdisk /dev/sdf


Copy the BIOS data

  • dd if=/dev/sda1 of=/dev/sde1
  • dd if=/dev/sda1 of=/dev/sdf1


Copy the Boot

  • proxmox-boot-tool format /dev/sde2
  • proxmox-boot-tool format /dev/sdf2
  • proxmox-boot-tool init /dev/sde2
  • proxmox-boot-tool init /dev/sdf2


Add to the ZFS pool

  • zpool attach rpool ata-INTEL_SSDSC2BX800G4_XXXXXX-part3 /dev/disk/by-id/scsi-XXXXX1-part3
  • zpool attach rpool ata-INTEL_SSDSC2BX800G4_XXXXXX-part3 /dev/disk/by-id/scsi-XXXXX2-part3


Hardware Changes

  • turn off the server
  • remove the drives
  • ensure server still boots


Remove old drives from zpool

  • zpool status rpool
  • zpool detach rpool <new id>
  • zpool detach rpool <new id>


Remove old drives from boot

  • proxmox-boot-tool status
  • proxmox-bool-tool clean
  • proxmox-boot-tool status



No comments:

Post a Comment