Respuesta corta: VMDK es el formato nativo de VMware; KVM usa QCOW2 o RAW. La conversión en sí es un comando (qemu-img convert), pero hay cuatro cosas que verificar antes y después: la tabla de particiones, el estado del disco (thick, thin o con snapshots), la configuración del bootloader y si la VM arranca por BIOS o UEFI. Un error en cualquiera de esos cuatro puntos hace que la VM no arranque.
La conversión no es la parte difícil. La verificación sí.
Los tres formatos
VMDK
El formato de VMware. Tiene múltiples variantes internas —monolítico, dividido en partes, thin, thick— y eso importa: no todas se convierten igual.
QCOW2
El formato nativo de QEMU. QCOW significa *QEMU Copy On Write*, y de ahí vienen sus ventajas: snapshots internos, thin provisioning real, compresión y cifrado opcionales. Ocupa solo lo que usa.
Es la opción por defecto salvo que tengas una razón concreta para otra cosa.
RAW
Una imagen de bloques sin ninguna estructura encima. Máximo rendimiento porque no hay capa intermedia, pero ocupa el tamaño completo desde el día uno y no soporta snapshots a nivel archivo.
Tiene sentido sobre almacenamiento que ya te da snapshots por abajo (ZFS, Ceph, LVM), donde la capa de QCOW2 sería redundante.
Cuál elegir
| QCOW2 | RAW | |
|---|---|---|
| Espacio ocupado | Solo lo usado | Todo, desde el inicio |
| Rendimiento | Muy bueno | El mejor |
| Snapshots propios | Sí | No |
| Compresión | Sí | No |
| Sobre ZFS/Ceph/LVM | Redundante | Recomendado |
| Sobre disco local o NFS | Recomendado | Solo si buscás máximo rendimiento |
En la práctica: QCOW2 para la mayoría, RAW si el almacenamiento de abajo ya resuelve snapshots.
La conversión
`bash
qemu-img convert -p -f vmdk -O qcow2 disco.vmdk disco.qcow2
qemu-img convert -p -f vmdk -O raw disco.vmdk disco.raw
qemu-img info disco.vmdk
qemu-img check disco.qcow2
`
El -p muestra el progreso, que en discos grandes se agradece.
Los cuatro puntos de verificación
Acá se juega si la VM arranca o no.
1. Integridad de la tabla de particiones
`bash
qemu-img check disco.qcow2
virt-filesystems -a disco.qcow2 –long -h # requiere libguestfs-tools
`
Si qemu-img check reporta errores, no sigas: resolvelos en el origen.
2. Estado del disco: el problema de los snapshots
Este es el que más conversiones rompe. Si el VMDK tiene una cadena de snapshots activa, estás convirtiendo un disco que no es el estado real de la máquina.
La regla es simple: consolidar todos los snapshots en VMware antes de exportar. Sin excepción.
`powershell
Get-VM | Get-Snapshot | Select VM, Name, Created, SizeGB | Sort Created
`
Snapshots de meses de antigüedad son deuda que hay que limpiar antes de migrar, no durante.
3. Bootloader
Después de convertir, el disco puede estar perfecto y la VM no arrancar porque GRUB apunta a un dispositivo que ya no existe: el disco pasa de /dev/sda a /dev/vda al usar virtio.
Se previene usando UUID en /etc/fstab y en la configuración de GRUB, en vez de nombres de dispositivo.
4. BIOS o UEFI
El firmware de destino tiene que coincidir exactamente con el de origen. Una VM instalada con UEFI no arranca en una máquina configurada como BIOS, aunque el disco esté perfecto.
`bash
virt-inspector -a disco.qcow2 | grep -i -A2 "boot\|firmware"
`
Y si hay Secure Boot, hay que verificar que la plataforma destino lo soporte y que los drivers estén firmados.
Errores frecuentes y qué significan
| Síntoma | Causa habitual |
|---|---|
| "No bootable device" | Firmware equivocado (BIOS vs UEFI) |
| Arranca y cae a initramfs | Falta el módulo virtio en el initramfs |
| "Cannot find root device" | fstab o GRUB con /dev/sdX en vez de UUID |
| Kernel panic al arrancar | Driver de disco no disponible |
| Arranca sin red | Falta virtio-net o cambió el nombre de la interfaz |
| La conversión falla a mitad | Cadena de snapshots o VMDK corrupto |
Los tres primeros se resuelven con virt-rescue o montando el disco con guestmount y corrigiendo desde afuera.
Preguntas frecuentes
¿Cuánto tarda convertir un disco?
Depende del tamaño y del almacenamiento. Como referencia gruesa, un disco de 100 GB en almacenamiento decente tarda entre 10 y 30 minutos. Ese tiempo es parte de la ventana de corte si no usás migración incremental.
¿Puedo convertir con la VM encendida?
El disco que convertís queda inconsistente si la VM está escribiendo. Para eso existe la migración incremental: se replica en caliente y se sincroniza el delta final con la VM apagada.
¿Se puede volver atrás?
Sí, mientras conserves el VMDK original. Nunca borres el origen hasta que la VM esté estable en destino — al menos dos semanas.
¿Conviene aprovechar y achicar los discos?
Sí, es un buen momento. qemu-img convert ya descarta el espacio no usado al pasar a QCOW2. Reducir particiones es otro tema y conviene hacerlo aparte, no durante la migración.
En resumen
La conversión es un comando; lo que define el resultado es la verificación de los cuatro puntos. Consolidá snapshots, usá UUID, replicá el firmware exacto y verificá la integridad antes y después.
Lo que sigue es el otro gran motivo de arranques rotos: los drivers virtio.
4 páginas · el procedimiento paso a paso, en PDF. Gratis, por dejar tu email.
