Ampliar el disco de una VM Linux en Proxmox sin reiniciar

proxmox linux debian almacenamiento

Una VM Debian se ha quedado sin espacio en /. En esta guía la ampliamos de 20 a 30 GB en caliente: primero el disco virtual desde Proxmox y después la partición y el sistema de ficheros dentro de la VM, sin apagar nada.

[!NOTE] Probado con una VM Debian 13 (imagen cloud, raíz en /dev/sda1 con ext4 y sin LVM) sobre Proxmox VE con almacenamiento local-lvm. Si tu VM usa LVM dentro del sistema invitado, los pasos finales cambian.

1. Comprobar el espacio actual

Dentro de la VM:

lsblk
df -h /

El disco sda mide 20 GB y la raíz está al 95 %:

Salida de lsblk y df -h antes de ampliar el disco

2. Ampliar el disco virtual desde Proxmox

[!WARNING] Haz una copia de seguridad o un snapshot antes. Proxmox solo permite ampliar discos, nunca reducirlos.

En la shell del nodo, con el ID de la VM (101) y su disco (scsi0):

qm resize 101 scsi0 +10G
qm config 101 | grep scsi0

También se puede hacer desde la web: VM → Hardware → Disco → Acciones del disco → Redimensionar.

Salida de qm resize y qm config en el nodo Proxmox

3. Ampliar la partición y el sistema de ficheros

De vuelta en la VM:

sudo apt install -y cloud-guest-utils   # incluye growpart
sudo growpart /dev/sda 1
sudo resize2fs /dev/sda1
df -h /

Salida de growpart, resize2fs y df -h tras ampliar

[!TIP] Si lsblk sigue mostrando el tamaño antiguo, fuerza que el sistema vuelva a leer el disco: echo 1 | sudo tee /sys/class/block/sda/device/rescan

Si la raíz usa XFS en lugar de ext4, cambia resize2fs por sudo xfs_growfs /.

¿Y si la VM es Windows?

Tras el paso 2, en PowerShell como administrador:

Update-HostStorageCache
$max = (Get-PartitionSupportedSize -DriveLetter C).SizeMax
Resize-Partition -DriveLetter C -Size $max
Get-Volume -DriveLetter C

[!CAUTION] Si hay una partición de recuperación justo después de C:, Windows no podrá ampliarla hasta moverla o eliminarla.

Resumen

Paso Dónde Comando
Ver el espacio VM lsblk · df -h /
Ampliar el disco virtual Nodo Proxmox qm resize 101 scsi0 +10G
Ampliar la partición VM sudo growpart /dev/sda 1
Ampliar el sistema de ficheros VM sudo resize2fs /dev/sda1