Muchos habrán pasado alguna vez por una situación en la que han tenido que iniciar un equipo mediante un USB, ya fuera para iniciar un Linux (Ubuntu, Linux Mint, etc) o algún programa de recuperación (como por ejemplo Acronis), pero no suele ser muy común querer arrancar una máquina virtual en VirtualBox desde un USB, dado que creando la máquina se tiene la opción de arrancar desde una ISO directamente.
En mi caso, el otro día necesité arrancar una máquina virtual desde un USB, dado que tenía que probar la imágen que llevaba ese USB y no tenía la posibilidad ni el tiempo de copiar la imagen a mi equipo (pesaba casi 300Gb) ni podía descargarla por internet dado que se trataba de la imagen de un cliente. Así que mi opción más sencilla era crear una máquina virtual que iniciara desde el USB, o eso creía, porque no era tan sencillo como pensaba, dado que en VirtualBox la opción de iniciar desde USB no existe. Bueno, no existe oficialmente.
Buscando un poco por la gran red, encontré una forma de hacer justamente lo que necesitaba. No es un proceso demasiado largo ni complicado, pero no existe método para realizarlo en la interfaz visual de VirtualBox, sino que es parte del commando “VBoxManage”.
El primer paso es conectar la unidad USB a nuestro ordenador y dejar que este la detecte, y hecho esto abrir el Administrador de Discos Duros. Esto lo podemos hacer ejecutando el siguiente comando:
mmc diskmgmt.msc
En el Administrador de Discos buscamos nuestra unidad USB y anotamos o memorizamos el número de disco, que es lo que necesitaremos más adelante.
Ahora nos aseguramos de apagar y cerrar todas las máquinas de VirtualBox que tengamos en marcha y de cerrar también VitualBox. A continuación abrimos una ventana de comandos (cmd) como aministradores. Eso lo podemos hacer buscando “CMD” en el menú de inicio, haciendo click derecho sobre el icono y seleccionando la ipción Iniciar como Administrador. Una vez abierta la ventana de comandos nos dirigimos a la carpeta de instalación de VirtualBox:
cd %programfiles%\Oracle\VirtualBox
Y una vez aquí utilizamos el siguiente comando para crear un Disco Duro de Máquina Virtual (Virtual Machine Disk – VMDK) que apunta directamente a la unidad USB. De esta forma cuando arranquemos la máquina virtual desde este disco duro virtual, en realidad estaremos arrancando desde la unidad USB.
VBoxManage internalcommands createrawvmdk -filename C:\usb.vmdk -rawdisk \\.\PhysicalDrive#
- Es importante que cambies # por el número de disco que habías apuntado o memorizado anteriormente en el Administrador de Discos.
- C:\usb.vmdk puede ser cambiado por la ruta que desees para el disco virtual.
Ahora abriremos VirtualBox como administrador haciendo click derecho sobre el icono y seleccionando la opción de Iniciar como Administrador. Creamos una nueva máquina virtual y en el paso de configurar el disco duro seleccionamos la opción Usar Disco Virtual Existente y seleccionamos el que hemos creado en el anterior paso.
Y con esto ya podremos arrancar la máquina virtual desde una unidad USB. Si finalmente lo que queremos es instalar el sistema desde la unidad USB a la máquina virtual tendremos que crear un disco duro más antes de arrancar la máquina. Esto lo podemos hacer seleccionado la máquina que acabamos de crear, pulsando sobre configuración y en almacenamiento añadir un nuevo disco duro al controlador SATA.
Es importante que el disco USB sea el primero en la lista y utilice el primer puerto SATA, para que la máquina virtual lo utilice al arrancar.