Este documento describe el proceso paso a paso para migrar una máquina virtual desde Proxmox a un host Hyper-V utilizando el formato de disco .vhdx.
Usa el siguiente comando para identificar el disco de la máquina virtual:
lsblk
Este comando te mostrará los dispositivos y volúmenes asociados a la VM. Debes identificar el volumen, que generalmente está bajo `/dev/<nombre_volume>/<vm-id>-disk-<número>`.
Por ejemplo:
sdb 8:16 0 3.6T 0 disk ├─WD_Red_4TB-vm--2106--disk--0 253:2 0 40G 0 lvm
Suspende la VM en Proxmox antes de realizar la conversión para evitar corrupción de datos:
qm suspend <vm-id>
Usa `qemu-img` para convertir el disco crudo (raw) a formato `qcow2`. El siguiente comando asume que el volumen es LVM:
qemu-img convert -f raw /dev/<nombre_volume>/<vm-id>-disk-<número> -O qcow2 /ruta/destino/vm-<vm-id>-disk-0.qcow2
Si tu destino es una unidad local, como `/var/lib/vz`, puedes usar esa ruta para el archivo de salida.
Una vez creado el archivo `.qcow2`, conviértelo a `.vhdx` para que pueda ser usado en Hyper-V:
qemu-img convert -f qcow2 /ruta/destino/vm-<vm-id>-disk-0.qcow2 -O vhdx /mnt/pve/<share>/<vm-id>-disk-0.vhdx
Si la conexión de red es inestable, conviene hacer esta conversión primero en un disco local y luego transferir el archivo .vhdx al recurso compartido.
En el host Hyper-V:
Al iniciar la VM en Hyper-V, puede que el nombre del adaptador de red haya cambiado. Verifica el nombre actual del adaptador con:
ip a
Modifica el archivo de configuración de netplan para que use el nuevo nombre del adaptador (por ejemplo, de `ens192` a `eth0`):
sudo nano /etc/netplan/00-installer-config.yaml
Asegúrate de que el archivo netplan refleje el nuevo nombre del adaptador:
network:
version: 2
ethernets:
eth0:
dhcp4: true
Guarda el archivo y aplica los cambios:
sudo netplan apply
Si ves mensajes de error como “`Buffer I/O error on dev fd0`”, esto se debe a que el sistema intenta acceder a una disquetera que no existe. Para solucionarlo:
Si la VM proviene de varias migraciones, es recomendable ejecutar un chequeo del sistema de archivos:
fsck /dev/sda1