Acabo de descubrir hoy que se pueden crear archivos VMDK de VirtualBox que simplemente hacen referencia a particiones reales en discos locales y, no hace falta decir que se emocionaron bastante. "¡Esto significa que puedo iniciar mi instalación de Windows 7 desde VirtualBox ejecutándose en Linux!"
Creé el archivo VMDK así:
sudo VBoxManage internalcommands createrawvmdk -filename .VirtualBox/Hard\ Disks/Windows\ 7\ Local.vmdk -rawdisk /dev/sdb -partitions 2,4,5
La partición 2 es mi partición de arranque EFI, la partición 4 es la partición msft de Windows y la partición 5 es la partición NTFS real de Windows. Esto se realizó sin problemas, por lo que compré los archivos VMDK a mi usuario actual para poder ejecutarlos con mi usuario de inicio de sesión.
Esto condujo al primer enganche. Parece que no puedo agregar esta imagen a VirtualBox como cualquier usuario, excepto root, y realmente me gustaría no ejecutarla como root si es posible. ¿Hay alguna solución?
El siguiente problema es EFI. He activado el arranque EFI en VirtualBox, pero cada vez que inicio la imagen EFI / Microsoft / Boot / bootmgfw.efi, veo el siguiente código:
BlXmiInitialize failed 0xc000009a
y no arranca Además, tener que usar el shell UEFI real para arrancar las cosas es, en el mejor de los casos, una molestia.
¿Cómo puedo hacer que mi instalación local de Windows 7 se inicie como usuario no root de Linux en VirtualBox?
Actualizar
Al agregar su usuario de Linux al disk
grupo, puede usar la unidad VMDK como usuario no root:
sudo adduser me disk
Sin embargo, todavía no puedo superar el error de arranque.
Pensé que podría deberse a otros problemas, así que intenté usar mi disco de instalación de Windows 7 para la reparación de inicio, pero parece que ni siquiera ve la instalación de Windows, ya que el disco me indica que simplemente instale Windows.
Para resolver posibles problemas con la falta de información vital, hice lo siguiente para crear un VMDK de todo el disco, no solo las particiones individuales:
VBoxManage internalcommands createrawvmdk -filename ".VirtualBox/Hard Disks/Windows 7 Local.vmdk" -rawdisk /dev/sdb
La unidad /dev/sdb
es una unidad virtual proporcionada por una tarjeta Intel RAID de hardware (RS2BL080).