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).
fuente
Respuestas:
Según los miembros del equipo de VirtualBox y según el manual de VirtualBox :
Es bastante flojo, pero cierto. Curiosamente, podría decirse que sería más difícil implementar EFI para Mac OSX que para Windows, ya que básicamente todas las placas madre modernas tienen firmware UEFI que "simplemente funciona ™" con Windows, mientras que Apple usa su propia implementación EFI patentada diseñada para su propio hardware. .
TL; DR : a partir de la redacción de esta publicación, el soporte de EFI realmente no funciona con Windows en VirtualBox.
fuente
La información parece ser muy limitada con respecto al error de arranque de Windows efi. Solo puedo encontrar 2 enlaces a continuación, que parecen ser una copia de seguridad el uno del otro, en ruso
No está abordando el arranque de VirtualBox Windows EFI. Sin embargo, demuestra cómo modificar Windows
Bootmgfw.efi
para el arranque dual con grub-efi. Tal vez pueda usar esa técnica para inspeccionar el contenido bootmgfw.efi y señalar el problema real.Historias de éxito
Sin embargo, no se menciona el uso de efi. Entonces, tal vez usan biografías de estilo antiguo.
Posible problema: activación
De acuerdo con esta publicación , Windows puede solicitar la activación cada vez que cambia el modo de inicio (VM vs Native). Creo que esto es comprensible, ya que cambiar entre el modo es como cambiar a una placa base y una CPU diferentes.
fuente