Convertir VHD a OVA
Convierte un Hyper-V VHD en un appliance OVA importable con VirtualBox o herramientas de migración de escritorio.
Convierte archivos VHD en línea
Todavía no tenemos un conversor en línea específico para VHD a OVA, pero puedes convertir archivos VHD en línea a estos formatos:
Cómo convertir un archivo vhd a ova
- Virtualización
- Aún sin calificaciones.
Un VHD suele proceder de Hyper-V o Microsoft Virtual PC, mientras que se requiere un OVA cuando otro hypervisor espera un paquete de appliance completo. Convertir el disco y reconstruir su hardware virtual permite transferir, archivar o compartir la máquina como un solo archivo.
Qué es el formato VHD
VHD, o Virtual Hard Disk, es una imagen de disco basada en archivos que contiene un sistema operativo, aplicaciones, particiones y datos. Microsoft Hyper-V, Virtual PC, Windows Disk Management y algunos flujos de trabajo de Azure utilizan archivos VHD.
Un VHD puede tener un tamaño fijo, expandirse dinámicamente o ser un disco differencing que depende de un VHD principal. Contiene almacenamiento, no la definición completa de la máquina virtual: el número de CPU, la memoria, el firmware, los adaptadores de red, los controladores y otros ajustes de hardware se almacenan por separado.
VHDX es un formato de disco más reciente de Microsoft. No es igual que VHD y puede necesitar conversión con Hyper-V, QEMU u otra utilidad de disco antes de que un flujo de trabajo basado en VHD pueda utilizarlo.
Qué es el formato OVA
OVA es un paquete de Open Virtualization Appliance en un solo archivo. Es un archivo tar que contiene un descriptor de hardware OVF, uno o más discos virtuales y, opcionalmente, un manifest que contiene checksums. El descriptor OVF puede registrar las CPU virtuales, la memoria, el firmware, los controladores de almacenamiento, los adaptadores de red y otros ajustes de la máquina.
OVA resulta práctico para importar o archivar una máquina virtual completa porque su configuración y sus discos se transportan juntos. VirtualBox, los productos de VMware y algunas plataformas cloud pueden importar appliances OVA u OVF, pero la configuración de hardware compatible varía.
OVA no es un formato de compresión. La exportación suele convertir el VHD a VMDK y puede requerir espacio libre para el disco convertido, la VM temporal y el archivo final. Por lo tanto, el OVA puede tener un tamaño igual o superior al de los archivos de origen.
Convertir el VHD con VirtualBox
- Instala una versión actual de Oracle VirtualBox en una máquina con suficiente espacio libre en disco. Mantén el VHD original sin cambios hasta haber probado el appliance importado.
- Crea una VM nueva en VirtualBox y selecciona la familia y la versión del sistema operativo que coincidan con el guest. Elige Use an Existing Virtual Hard Disk File y adjunta el archivo
.vhd. - Establece la memoria y el número de CPU en valores adecuados para la VM de origen. En Settings → System → Motherboard, activa EFI solo cuando la máquina original arranque con UEFI. Hyper-V Generation 2 normalmente utiliza UEFI; Generation 1 normalmente utiliza BIOS legacy.
- Comprueba Settings → Storage y adjunta el disco a un controlador compatible con el guest, normalmente SATA. No es necesario reproducir exactamente la configuración del controlador de Hyper-V original, pero el guest debe disponer de un controlador de arranque utilizable.
- Inicia la VM y confirma que el sistema operativo y las aplicaciones funcionan. Windows puede instalar nuevos drivers de hardware virtual, cambiar la interfaz de red o solicitar una reactivación.
- Apaga completamente el guest. No exportes mientras el VHD esté montado por otra VM, el host o un proceso de backup.
- Selecciona File → Export Appliance, elige la VM, establece un nombre de archivo de salida que termine en
.ovae inicia la exportación. VirtualBox crea el descriptor OVF y empaqueta el disco virtual exportado, normalmente como VMDK, dentro del OVA. - En el sistema de destino, selecciona File → Import Appliance, elige el OVA, revisa su firmware, CPU, memoria, controlador y configuración de red y, a continuación, impórtalo. Prueba la máquina importada antes de eliminar el VHD.
Usar la línea de comandos de VirtualBox
Después de crear y probar la VM, expórtala con:
VBoxManage export "VHD VM" --output "converted.ova"
Inspecciona la VM antes de exportarla con:
VBoxManage showvminfo "VHD VM"
La exportación mediante la línea de comandos requiere una VM de VirtualBox registrada; no convierte un VHD independiente en un appliance completo sin la configuración de hardware de la VM. Crea o configura esa VM en la interfaz gráfica, o utiliza comandos como:
VBoxManage createvm --name "VHD VM" --ostype Windows10_64 --registerVBoxManage storagectl "VHD VM" --name SATA --add sata --controller IntelAhciVBoxManage storageattach "VHD VM" --storagectl SATA --port 0 --device 0 --type hdd --medium "C:\VM\disk.vhd"
Establece la memoria, las CPU, el firmware y el tipo de guest correcto antes de exportar. Sustituye el tipo de guest cuando el origen no sea Windows de 64 bits.
Otros flujos de trabajo de escritorio
Para una conversión de formato de disco en lugar de una conversión de appliance completo, qemu-img puede convertir un VHD independiente a VMDK:
qemu-img convert -p -f vpc -O vmdk source.vhd disk.vmdk
Crea una VM alrededor del VMDK resultante en VirtualBox o VMware, configura su firmware y hardware y, a continuación, expórtala como OVA. StarWind V2V Converter es otra opción de escritorio para la migración de VHD a VMDK, especialmente en flujos de trabajo de Hyper-V a VMware, pero por sí solo no es un exportador de OVA completo. VMware OVF Tool puede empaquetar un OVF correctamente configurado y sus discos en un OVA; normalmente no infiere una definición completa de VM a partir de un VHD independiente.
Compatibilidad y límites de calidad
- Conserva las cadenas differencing. Un VHD hijo sin su principal está incompleto. Combina o aplana la cadena con la plataforma de virtualización de origen antes de la conversión, o proporciona la cadena completa a una herramienta compatible.
- Haz coincidir el firmware. Una incompatibilidad entre BIOS y UEFI puede impedir el arranque incluso cuando la conversión del disco se realiza correctamente. La configuración de Secure Boot también puede no transferirse entre hypervisors.
- Espera cambios de hardware. Los adaptadores sintéticos de Hyper-V, los integration services, los snapshots, los controladores de almacenamiento y las identidades de red pueden requerir limpieza o reconfiguración después de la importación.
- Comprueba las licencias y los drivers del guest. Windows puede detectar hardware diferente, solicitar una reactivación e instalar nuevos drivers de almacenamiento o de red. Linux puede requerir una reparación de initramfs o del bootloader si cambia el controlador o el firmware.
- Verifica el archivo después de transferirlo. Utiliza
sha256sum converted.ovaen Linux oGet-FileHash converted.ovaen PowerShell, después impórtalo en el hypervisor de destino y prueba los datos del guest.
Conversión online
Los conversores de archivos online generales no son adecuados para esta tarea: tendrían que cargar el sistema operativo y los datos del guest, y la mayoría solo convierte imágenes de disco en lugar de crear una definición de hardware OVF válida. Utiliza VirtualBox, QEMU, StarWind V2V o VMware OVF Tool localmente; utiliza un servicio online solo para datos de prueba no confidenciales cuando documente explícitamente la entrada VHD y la salida de appliance OVA.
VHD vs OVA: comparación de formatos
Cómo se comparan los formatos VHD y OVA en las propiedades que más importan para esta conversión.
| Propiedad | .VHD Virtual Hard Disk | .OVA Open Virtual Appliance |
|---|---|---|
| Compresión | Ambos | Ambos |
| Cifrado | — | No |
| Archivos divididos | — | No |
| Booteable | Sí | No |
| Compatibilidad con el sistema operativo | Amplio | Amplio |
| Tamaño de archivo típico | Grande | Grande |
| Estándar abierto | Parcialmente abierto | Sí |
| Introducido | 2005 | 2009 |
| Desarrollador | Microsoft | Oracle Corporation (originally VMware OVF initiative) |
| Tipo MIME | application/x-vhd | application/ovf |