Creación de un vhd para arrancarlo en modo nativo
Ayer me encontré con la necesidad de montar un Windows Server 2008 R2 en 64 bits. Ya que virtual PC no soporta imágenes en 64 bits y Virtual Box me daba problemas al querer instalar Hyper-V he decidio una solución con un gran rendimiento a la par que elegante: Montar un disco duro virtual (vhd) para poder arrancarlo en modo nativo
¿Qué necesitamos?
Creación del VHD
Lo primero que vamos a hacer es crear un disco duro virtual donde vamos a instalar posteriormente Windows Server 2008 R2 de 64 bits. Para ello, accedemos a la consola de comandos como administrador y ejecutamos lo siguiente:
diskpart
create vdisk file=c:\Win2K8R2x64.vhd maximum 40960
sel vdisk file=c:\Win2k8R2x64.vhd
attach vdisk
list disk
Con el apartado anterior estamos creando un disco duro virtual de 40GB y lo montamos en el sistema. El siguiente paso será crear una partición y formatearla en NTFS para poder trabajar con el vhd.
sel disk 2
create part primary
sel part 1
active
format fs=ntfs quick
assing
Instalación de Windows Server 2008 R2 64 Bits en el VHD
Una vez que tenemos el vhd montado y formateado ya podemos instalar el sistema operativo. Para ello necesitamos instalar
The Windows® Automated Installation Kit (AIK) for Windows® 7. Accedemos a la consola de comandos de AIK a través de Inicio => Todos los programas => Microsoft Windows AIK =>
Deployment Tools Command Prompt como administrador.
ImageX /apply c:\en_windows2008_r2_x64\sources\install.wim 3 /check F:\
Si desglosamos los parámetros de este comando analizamos lo siguiente:
Registrar el vhd en boot.ini
Como último paso debemos registrar el vhd en el boot para poder seleccionarlo en el menú durante el arranque.
En primer lugar, volvemos a la línea de comandos y desmontamos el vhd del sistema.
diskpart
select vdisk file=c:\Win2K8R2x64.vhd
detach vdisk
exit
Para registrar el nuevo disco, utilizamos el comando bcdedit a través de la línea de comandos:
bcdedit /copy {current} /d "Windows Server 2008 R2 64 bits – VHD Boot"
bcdedit /set {nuevo_GUID} device vhd=[C:]\Win2K8R2x64.vhd
bcdedit /set {nuevo_GUID} osdevice vhd=[C:]\Win2K8R2x64.vhd
bcdedit /set {nuevo_GUID} detecthal on
Espero que sea de utilidad
¡Saludos!