Grow a Linux VM disk online: rescan, growpart, pvresize, lvextend and xfs_growfs

echo 1 > /sys/class/block/sda/device/rescan; growpart /dev/sda 3; pvresize /dev/sda3; lvextend -r -l +100%FREE /dev/vg/lv. Without LVM: resize2fs or xfs_growfs. All online.

September 26, 2026 · 4 min

Mount a qcow2 disk on the host with qemu-nbd (read or repair files of a powered-off VM)

modprobe nbd max_part=16; qemu-nbd -c /dev/nbd0 vm.qcow2; partprobe; mount /dev/nbd0p1. When done, umount and qemu-nbd -d, or the VM will not start because of the lock. VM off, always; -r to only read.

September 26, 2026 · 4 min

Ceph on Proxmox: clearing the 'daemons have recently crashed' HEALTH_WARN and deleting orphaned VM disks in RBD

ceph crash info to learn what fell over, ceph crash archive-all to clear the warning. For orphaned disks: compare rbd ls with the .conf files of every node and delete with pvesm free or rbd rm.

September 25, 2026 · 4 min

Ceph on Proxmox: device classes and CRUSH rules to keep SAS, SSD and NVMe apart

rm-device-class + set-device-class on the OSD, crush rule create-replicated default host , and the pool onto that rule. No ‘class create’: the class is born with the first OSD that uses it.

September 25, 2026 · 4 min

Proxmox VE with Keycloak: OpenID Connect login (openid realm)

Confidential OIDC client in Keycloak, pveum realm add –type openid with preferred_username as the username claim, autocreate and ACLs. The old guides with /auth/realms/ and a ‘username’ mapper are no longer needed.

September 25, 2026 · 4 min

Proxmox VE without a subscription: no-subscription repositories on PVE 9 (deb822) and PVE 8

PVE 9 uses .sources (deb822) on trixie; PVE 8 uses .list on bookworm. Enterprise to Enabled: false, no-subscription on, same trick for Ceph and PBS. Copy/paste for both versions.

September 25, 2026 · 3 min

Proxmox: /usr/share/proxmox-ve/pve-apt-hook: not found when updating

The snippet /etc/apt/apt.conf.d/10pveapthook calls a script that no longer exists because proxmox-ve went away. Empty stub, apt install -f, apt install proxmox-ve. If you removed Proxmox on purpose, delete the snippet.

September 25, 2026 · 2 min

Proxmox: error: disk 'lvmid/…' not found at grub rescue

Old GRUB cannot parse LVM metadata once it wraps around the buffer. From the ISO: lvcreate -L 4M pve -n grubtemp and reboot. Then grub-efi-amd64 or grub-install so it does not come back.

September 25, 2026 · 4 min

Proxmox: VM is locked (snapshot-delete), cannot remove the snapshot

The delete stopped halfway because the disk snapshot no longer existed. qm unlock + qm delsnapshot –force removes it from the config; then clean whatever is left on the storage.

September 25, 2026 · 3 min

Proxmox: Windows is slow with CPU type host (md_clear and flush_l1d)

host exposes md_clear and flush_l1d; Windows sees them and enables mitigations that multiply RAM latency (100 ns → 2000 ns on old Xeons). x86-64-v2-AES or v3 do not expose them. qm set –cpu and stop/start.

September 25, 2026 · 3 min