Self Hosting

Proxmox: Replacing Boot drive in a pool

Normal instructions say that you should either use /dev/sdx or /dev/disk/by-id/x in a zpool command. In my case after I physically replaced the bad SSD (from a RAID 1 pool), there was no longer any device reference to it (zpool replace would fail using the old reference). I noticed that the

zpool status rpool

Returned a sequence of numbers for the old drive instead of the device name. I suspect that is the UUID. Let's say it showed 1234567890.

zpool replace rpool 1234567890 /dev/disk/by-id/new_drive_id_xxxxxxxxxxxx

It should now attach and resilver the new drive. However, in my case the new drive had been automatically formatted without the BIOS/EFI partitions. If my original SSD ever failed, the new SSD would fail to boot.

I had to detach the new drive

zpool detach rpool /dev/disk/by-id/new_drive_id_xxxx

Then I went into the web interface, carefully selected the new drive, and chose "Wipe Disk". Then I followed the standard instructions:

sgdisk /dev/disk/by-id/orig_drive_id_xxxx /dev/disk/by-id/new_drive_id_xxxx
sgdisk -G /dev/disk/by-id/new_drive_id_xxxx
zpool attach -f rpool orig_drive_id_xxxx-part3 new_drive_id_xxxx-part3

Then wait for the resilver to end by checking with

zpool status rpool

Then setup the 512 MB EFI partition (if your BIOS supports EFI)

proxmox-boot-tool format /dev/disk/by-id/new_drive_id_xxxx-part2
proxmox-boot-tool init /dev/disk/by-id/new_drive_id_xxxx-part2
proxmox-boot-tool refresh

Otherwise if you use GRUB:

grub-install /dev/disk/by-id/new_drive_id_xxxx

Then reboot.

References:

How to: Replace dead physical disk from Proxmox (PVE) for ZFS pool easily (How to: Expand/Expand/Grow ZFS pool easily (Replace with larger physical disks)) > Blog-D without Nonsense
How to: Replace dead physical disk from Proxmox (PVE) for ZFS pool (How to Expand/Expand/Grow ZFS pool (Replace with larger physical disks))
How to: Find drive name (real name) for /dev/sdb /dev/sdc from Proxmox (PVE) > Blog-D without Nonsense
How to: Find drive name (real name) for /dev/sdb /dev/sdc from Proxmox (PVE)
[SOLVED] - zfs boot disk no longer bootable after rpool resilvering
Dear passionate proxmox experts, I have installed proxmox to boot from a mirrored (raid1) ZFS partition. So far so good: # zpool status rpool pool: rpool state: ONLINE config: NAME STATE READ WRITE CKSUM rpool ONLINE 0 0 0 mirror-0 ONLINE 0 0 0 nvme-eui.0026b7683f1dbb55-part3...
Host System Administration
Host System Administration

In case you need to track down the device by UUID:

Find UUID of Storage Devices in Linux
UUID is a unique identifier used in partitions to uniquely identify partitions in Linux operating systems. UUID is a property of the disk partition itself. So, if you install the hard drive containing the partitions on another Linux computer, the partitions will have the same UUID as before. In this…
Host Bootloader - Proxmox VE

GitHub - wofferl/proxmox-backup-arm64: Script for building Proxmox Backup Server 2.x/3.x for Armbian64 based on Bullseye
Script for building Proxmox Backup Server 2.x/3.x for Armbian64 based on Bullseye - GitHub - wofferl/proxmox-backup-arm64: Script for building Proxmox Backup Server 2.x/3.x for Armbian64 based on B…

Mac OS in a VM

PVE-zsync - Proxmox VE

Services

Plausible Analytics

How To Install Plausible Analytics on Ubuntu 20.04 | DigitalOcean
Plausible Analytics is an open-source, self-hosted web analytics application written in Elixir. It focuses on being simple, and privacy-focused. In this tuto…
Getting started | Plausible docs
The easiest way to get started with Plausible is with our official managed service in the Cloud. It takes 2 minutes to start counting your stats with a worldwide CDN, high availability, backups, security and maintenance all done for you by us. Our managed hosting can save a substantial amount of dev…
Docker