Esta pregunta es bastante teórica:
Supongamos que tengo una PC con dos sistemas operativos diferentes en dos particiones diferentes: OS1 en sda1 y OS2 en sda2. ¿De alguna manera es posible configurar un programa como VMWare o Virtualbox en OS1, que accede a sda2, lo inicia y ejecuta OS2? Por otro lado, OS2 también debería ser arrancable directamente.
Me doy cuenta de que el OS2 emulado sería mucho más lento y probablemente nadie realmente usaría esta configuración, pero me parece muy interesante.
virtualbox
vmware
virtualization
Wauzl
fuente
fuente
Respuestas:
Es posible , sí, y no necesariamente tiene que ser más lento, ya que en estos días ya no es emulación , es virtualización : la mayoría de las CPU admiten virtualización asistida por hardware (VT-x y demás), pero incluso sin ellas, VirtualBox tiene muchas trucos para hacer que las máquinas virtuales virtualizadas por software se ejecuten rápidamente.
En cualquier caso, no será más lento que arrancar una máquina virtual antigua. Incluso podría ser más rápido (debido al uso de una partición sin formato en lugar de una imagen de disco fragmentada).
Pero no estoy completamente seguro de cómo hacerlo en VirtualBox: ¿creo que debe crear un archivo .vdi especial usando
vboxmanage
esos puntos a la partición real? Además, no tengo ideas sobre cómo hacer que el gestor de arranque funcione en tal situación.Aunque solía depurar varios problemas de arranque en Linux ejecutando una copia de solo lectura del sistema operativo actual dentro de sí mismo, usando
qemu-system-x86_64 -enable-kvm -hda /dev/sda -snapshot -monitor stdio
.fuente
-snapshot
, que hace una copia temporal de / dev / sda (para que ambos sistemas no se bloqueen los datos del otro).qemu
le permitirá usar dispositivos de bloque como/dev/sda2
, etc., como discos duros virtuales. VMWare también lo hace. No estoy seguro acerca de Virtualbox.Cuando inicia
/dev/sda2
en una máquina virtual, tendrá un efecto similar como si sacara un disco duro y lo iniciara en una computadora diferente con hardware diferente. Si el sistema operativo puede manejar ese cambio, entonces debería estar bien ejecutando el sistema operativo tanto en una máquina virtual como de forma nativa. Windows le dará problemas, por supuesto, y Linux probablemente lo tolerará muy bien.Puede mitigar los posibles problemas haciendo que el hardware virtual coincida lo más posible con el hardware físico de su sistema, aunque, por supuesto, tendrá que especificar menos RAM. De particular importancia es especificar el mismo tipo de controlador de disco (IDE, SCSI, etc.).
fuente
Es completamente posible, de hecho, ¡solía hacer esto!
Tuve una partición / disco (olvido cuál) con Windows uno con Linux, creo que fue en los días de Windows XP (ciertamente, eso duró un tiempo). Era una buena forma de tener acceso a ambos conjuntos de datos sin utilizar una carga de espacio en disco con diferentes instalaciones.
El único problema que recuerdo haber tenido fue que necesitaba configurar dos perfiles de hardware diferentes en XP. Se confundió mucho cuando arrancó con los incorrectos.
No estoy seguro de cómo responderían los procesos de activación actuales al cambio de hardware. Eso bien podría causar algunos problemas ... (pero si alguna vez arranca Windows como una máquina física y tiene Linux como VM / o física, eso resolvería eso)
Según recuerdo, hice esto con la estación de trabajo VMware. Eso definitivamente admite el arranque desde un disco sin formato. Estoy seguro de que la versión de MS sí. No estoy tan seguro acerca de las máquinas virtuales de Linux, pero me sorprendería si no.
fuente
Curiosamente, para aquellos que ejecutan VMware Fusion en una Mac, con una partición de bootcamp de Windows, es posible iniciar una máquina virtual que se ejecute fuera de la partición de bootcamp:
Nota, sin embargo:
Fuente: VMware: lanzamiento de la partición Boot Camp en VMware Fusion
fuente
Lo hice . Es bastante útil, pero hay algunas limitaciones y configurarlo no es trivial.
El sistema operativo nativo o VM debe ser tolerante con el hardware en el que se ejecuta. A la mayoría de las distribuciones de Linux no les importa y solo se ejecutan en cualquier cosa en la que las inicie, siempre que la arquitectura de la CPU coincida. No es tan sencillo con Windows. También puede enfrentar problemas de activación / licencia.
En Windows, no puede iniciar el sistema operativo en una máquina virtual mientras su partición está montada en el host. Esto no es un gran problema, ya que en este caso probablemente le gustaría arrancar Linux dentro de Windows y Windows no admite
ext
sistemas de archivos de todos modos.Configurar bootloaders es complicado. Necesita una configuración de arranque separada para arrancar en VM y para arrancar de forma nativa. Utilicé Grub4DOS / NeoGrub como gestor de arranque de la primera etapa al arrancar de forma nativa, luego pude cargar en cadena el gestor de arranque de Windows o arrancar en Ubuntu. VM tenía una unidad pequeña (pocos MB) montada con mayor prioridad que la unidad principal. Esa unidad contenía GRUB2 instalado manualmente que utilicé para arrancar Ubuntu dentro de VM.
La configuración inusual del cargador de arranque requiere una actualización cuidadosa. Por ejemplo, actualizar GRUB cuando se ejecuta Linux de forma nativa podría romper la cadena del cargador de arranque. Actualizar dentro de VM requiere instalarlo manualmente en la partición de arranque.
fuente
Eso es posible con bastante facilidad ... ¡Si usa discos duros separados para cada instalación!
Eche un vistazo aquí, por ejemplo: http://www.serverwatch.com/server-tutorials/using-a-physical-hard-drive-with-a-virtualbox-vm.html , o busque en el sitio web de VirtualBox (que está inactivo por el momento) para estas palabras clave.
Lo uso para poder acceder a mi partición de Linux cuando trabajo en Windows, como cosas de Adobe u otras cosas que no se ejecutan sin problemas en Wine o Virtualization of Windows en Linux.
Además, porque a menudo accedo a mi torre de forma remota, y todo mi disco duro de Linux está encriptado, mientras que mi disco duro de Windows no está y solo tiene datos no confidenciales. Así que inicio Windows (la entrada de Windows en GRUB está preseleccionada), inicio sesión en Teamviewer, inicio Virtualbox y luego mi disco duro Linux.
En esta dirección - Windows -> Virtualbox -> otro HD con Linux -> es posible bastante simple, debido a la detección de hardware superior, sobre la marcha, que Linux, es decir, Ubuntu, admite.
En la otra dirección, terminarás con un desastre. A Windows no le gusta cambiar el hardware ... Podría estropear su sistema, no se inicia en absoluto, o incluso si lo hace, tal vez le diga que su licencia ya no es válida porque se producen demasiados cambios de hardware con demasiada frecuencia.
Dicho esto, desea mantener Windows como entrada de arranque preseleccionada en GRUB, pero tenga cuidado de que seleccione la entrada correcta en GRUB cuando se ejecuta en Virtualbox. Si tiene problemas con retrasos de forma remota, aumente el tiempo de espera de arranque en GRUB para estar seguro.
Espero que te haya ayudado :)
fuente