Use VirtualBox para arrancar una unidad física / partición [duplicado]

12

Tengo dos particiones en mi disco duro, una para Windows y otra para Linux. Me gustaría usar VirtualBox en Linux para arrancar la partición de Windows como una máquina virtual. ¿Cómo puedo lograr esto?

Joshua
fuente
77
Si planea arrancar la partición algunas veces físicamente y otras virtualmente, tenga en cuenta que esto no es fácil de configurar. A Windows no le gusta que se cambie el hardware debajo.
Harry Johnston
Para cualquiera que aterrice aquí desde el motor de búsqueda de su elección, vea la excelente respuesta aquí
Codebling

Respuestas:

6

En realidad, hay una solución realmente fácil para lograr esto. El siguiente proceso creará un disco virtual ( .vmdk) que se iniciará en una unidad / partición designada. Básicamente, "falsifica" el arranque directamente en la unidad, por lo que la unidad virtual creada no tiene un tamaño muy grande y no se hace más grande.

Sin embargo, una desventaja de la siguiente sugerencia sería que se inicia virtualmente . Es decir, puede ejecutar cualquier programa o archivo que esté en él, pero una vez en la máquina virtual, no se pueden realizar cambios en la configuración / programa en la unidad física . Si desea agregar programas, actualizaciones, etc., normalmente debería iniciar en la unidad, realizar los cambios deseados y luego iniciar desde VirtualBox. No sé si esto es un factor decisivo para ti, pero aquí están los productos.

Parte de este ejemplo es para hacerlo en Windows porque no conozco la estructura del directorio de Linux y las variables de ruta de memoria, pero el comando VirtualBox será el mismo, independientemente del sistema operativo host. El mismo proceso solo complementa los comandos del sistema operativo en consecuencia

1: WindowsKey+ R> Tipo diskmgmt.msc Anote el número de disco de la unidad que está tratando de virtualizar. Alternativa Linux para calcular esto sería estar ejecutando uno de los siguientes servicios básicos> fdisk, lsblk,gparted

2: Abra un CommandPromptTerminal con privilegios de administrador / sudo> tipo cd %programfiles%\oracle\virtualbox. No sé cuál es la ruta de directorio predeterminada para VirtualBox en las distribuciones de Linux, pero simplemente encuéntrala cd.

3: Ejecute el siguiente comando de VirtualBox: VBoxManage internalcommands createrawvmdk -filename "%USERPROFILE%"\.VirtualBox\CUSTOMNAMEOFVHD.vmdk -rawdisk \\.\PhysicalDrive#

~ Reemplace "CUSTOMNAMEOFVHD" por lo que quiera. También puede cambiar la ruta completa de ese archivo a otra cosa. Simplemente dice VBoxManagedónde poner lo creado.vhd

~ Cambie el último carácter #del número de unidad de disco registrado en el paso 1.

Tutorial de Windows: http://www.pendrivelinux.com/category/virtual-machine/

Ejemplo específico de Ubuntu: /ubuntu/168156/how-to-use-a-real-partition-with-windows-7-installed-in-a-virtualbox-vm

BiTinerary
fuente
3
Es útil mencionar que para usar este nuevo .vhd, "VirtualBox Manager" debe iniciarse con privilegios administrativos, porque el acceso a dispositivos sin procesar requiere esto.
Jonathan Komar
La \\.\PhysicalDrive#es la parte más importante. NO PUEDE poner un archivo de imagen de disco aquí, debe ser un dispositivo de bloque (bajo Linux) unidad "física" en Windows.
masterxilo
Sin embargo, bajo Linux es fácil montar cualquier archivo como un dispositivo de bloque virtual (usando losetup), mientras que no conozco una manera fácil bajo Windows.
masterxilo
5

Del capítulo 10. Temas avanzados del manual de VirtualBox :

Para crear una imagen especial para el soporte de partición sin formato (que contendrá una pequeña cantidad de datos, como ya se mencionó), en un host Linux, use el comando

VBoxManage internalcommands createrawvmdk -filename /path/to/file.vmdk -rawdisk /dev/sda -partitions 1,5

Este ejemplo crearía la imagen /path/to/file.vmdk (que, nuevamente, debe ser absoluta), y las particiones 1 y 5 de / dev / sda serían accesibles para el invitado.

Por ejemplo, si su disco duro es /dev/sda/y la partición de Windows es /dev/sda2, el comando que use podría verse así:

VBoxManage internalcommands createrawvmdk -filename ~/windows.vmdk -rawdisk /dev/sda -partitions 2

Esto crearía un archivo, windows.vmdken su carpeta de inicio, que luego montaría en la máquina virtual.

nc4pk
fuente
Esto puede funcionar si instala virtualbox.org/attachment/wiki/Migrate_Windows/MergeIDE.zip primero. Buena idea por cierto.
MattPark
2

Me encanta virtualbox

pero normalmente no puede de repente virtualizar una computadora física con Windows en una virtual simplemente leyendo el disco duro de Virtualbox. (experiencia y fuente ) La solución de Tapped-out parece más fácil, pero no creo que arranque con éxito. Sin embargo, es posible que desee probarlo primero. Esperemos que su instalación de Windows no se corrompa cuando intenta cargar todos los controladores nuevos, etc., pero probablemente solo BSOD de inmediato.

Si la solución eliminada no funciona, continúe y pruebe esto.

Utilice la herramienta de conversión autónoma vmware : asegúrese de tener instalado vmware player (gratis) también.

VMware autónomo le permitirá convertir una máquina virtual, una máquina física en ejecución o una copia de seguridad acronis true image en una máquina virtual. También hará algo a todos los controladores para que su máquina funcione virtualmente.

  1. si probó la solución de tapped-out, apunte vmware-converter a esa virtualbox vm que creó allí. vmware-converter lo leerá, lo convertirá en una máquina virtual, reparará los controladores e lo instalará en vmware player. Desde allí, puede convertirlo al formato virtualbox si lo desea, o simplemente usar el reproductor.

  2. Si no probó su solución, o si la opción 1 no le gustó la lectura del disco sin formato y falló, Virtualbox tiene un artículo realmente bueno , sobre la conversión de una instalación real de Windows a Virtualbox, usando Linux.

Básicamente,

  • Instale MergeIDE en la máquina de Windows primero
  • cat /dev/sdg | VBoxManage convertfromraw stdin OutPutFile.vdi NUMBEROFBYTES
  • agregue unidad a virtualbox y cree una nueva máquina virtual
MattPark
fuente