Un hyperviseur tel que VirtualBox peut-il être utilisé pour lancer un système d’exploitation virtualisé qui est également directement amorçable?


60

Cette question est plutôt théorique:

Supposons que j'ai un PC avec deux systèmes d'exploitation différents sur deux partitions différentes: OS1 sur sda1 et OS2 sur sda2. Est-il possible en quelque sorte de configurer un programme tel que VMWare ou Virtualbox dans OS1, qui accède à sda2, le démarre et exécute OS2? D'autre part, OS2 devrait également pouvoir être démarré directement.

Je me rends compte que l'OS2 émulé serait beaucoup plus lent et que personne n'utiliserait vraiment cette configuration, mais je trouve cela très intéressant.


1
@MorrisIriga êtes-vous sûr? Je me souviens qu’il existait un outil de virtualisation capable de monter de vrais disques durs. Pas sûr que ce soit son oracle virtualbox ou son microsoft virtualpc.
LPChip

1
@LPChip Désolé, j'avais mal compris la question. Oui, vous pouvez monter un disque dur physique en utilisant VirtualBox. Regardez ceci ou cela . Je ne connais pas d'autres logiciels de virtualisation.
MorrisIriga



4
VMWare Fusion peut lancer une partition "Boot Camp" en tant que machine virtuelle dans l'hôte Mac OS X: kb.vmware.com/selfservice/microsites/…
Jacob Krall

Réponses:


58

C'est possible , oui, et cela ne doit pas forcément être plus lent, car de nos jours ce n'est plus une émulation , c'est de la virtualisation - la plupart des processeurs prennent en charge la virtualisation assistée par matériel (VT-x et autres), mais même sans cela, VirtualBox en a beaucoup astuces pour que les machines virtuelles virtualisées par logiciel fonctionnent rapidement.

Dans tous les cas, cela ne sera pas plus lent que de démarrer une vieille machine à l'ordinateur. Cela pourrait même être plus rapide (en raison de l’utilisation d’une partition brute au lieu d’une image disque fragmentée).


Mais je ne suis pas tout à fait sûr de savoir comment le faire dans VirtualBox - je pense que vous devez créer un fichier .vdi spécial en utilisant vboxmanageces points vers la partition réelle? De plus, je n'ai aucune idée de la façon de faire fonctionner le chargeur de démarrage dans une telle situation.

Bien que j’ai utilisé pour déboguer divers problèmes de démarrage sous Linux en exécutant une copie en lecture seule du système d’ exploitation actuel en lui-même, en utilisant qemu-system-x86_64 -enable-kvm -hda /dev/sda -snapshot -monitor stdio.


6
Vous avez réellement exécuté un système d'exploitation virtualisé à l'intérieur de lui-même?
Wauzl

8
Bien sûr, pourquoi pas? Ce n’est pas très différent d’exécuter une VM normale. La seule partie importante est la -snapshotcréation d’une copie temporaire de / dev / sda (afin que les deux systèmes ne gênent pas les données de l’autre).
grawity

6
Votre déclaration de tentative d'utilisation de vboxmanage afin de configurer un VDI (et non un disque dur virtuel) en tant qu'espace réservé pour la partition brute est correcte. Le manuel de la VBOX l'explique en détail. J'aime votre astuce de débogage. Je n'ai jamais pensé à le faire comme ça, mais je pense déjà à certains cas d'utilisation ;-)
Tonny

28

qemuvous permettra d'utiliser des périphériques en bloc tels que /dev/sda2, etc. comme disques durs virtuels. VMWare en fait de même. Pas sûr de Virtualbox.

Lorsque vous démarrez /dev/sda2une machine virtuelle, cela aura un effet similaire à celui obtenu si vous aviez sorti un disque dur et que vous l'avez démarré sur un ordinateur différent avec un matériel différent. Si le système d'exploitation peut gérer ce changement, vous devriez pouvoir exécuter le système d'exploitation à la fois sur une machine virtuelle et de manière native. Bien entendu, Windows vous posera des problèmes et Linux le tolérera probablement très bien.

Vous pouvez atténuer les problèmes potentiels en faisant correspondre le matériel virtuel autant que possible au matériel physique de votre système - bien que vous deviez bien entendu spécifier moins de RAM. Il est particulièrement important de spécifier le même type de contrôleur de disque (IDE, SCSI, etc.).


8
Apparemment, virtualbox peut le faire aussi en utilisant la commande 'VBoxManage internalcommands createrawvmdk' (vue ici )
Michael B

19

C'est tout à fait possible, en fait, j'avais l'habitude de faire ça!

J'avais une partition / disque (j'oublie lequel) avec Windows avec Linux, je pense que c'était à l'époque de Windows XP (certes, cela a duré un certain temps). C'était un bon moyen d'accéder aux deux ensembles de données sans utiliser une charge d'espace disque avec des installations différentes.

Le seul problème dont je me souvienne est que je devais configurer deux profils matériels différents dans XP. Il a vraiment été confus quand il a démarré avec les mauvais.

Je ne sais pas comment les processus d'activation actuels répondraient au changement de matériel. Cela pourrait bien causer quelques problèmes ... (mais si vous ne démarrez que Windows en tant que machine physique et que vous avez Linux en tant que VM / ou physique, cela résoudrait ce problème)

Si je me souviens bien, je l’ai fait avec la station de travail VMware. Cela prend définitivement en charge le démarrage à partir d'un disque brut. Je suis sûr que la version MS le fait. Je ne suis pas sûr des machines virtuelles Linux, mais je serais très surpris sinon.


Oh, les profils matériels ... Je n'ai jamais vraiment touché à cette fonctionnalité. Les licences le ruineraient définitivement maintenant.
Sinni800

@ sinni800 Ce fut mon temps que jamais les utiliser, selon ce qu'ils existent encore, mais ont déménagé dans le kit de pilote comme devconx64.exe
Michael B

Les profils matériels ont été supprimés de Vista et des systèmes Windows ultérieurs
ZAB

8

Fait intéressant, pour ceux qui exécutent VMware Fusion sur un Mac, avec une partition bootcamp Windows, il est possible de démarrer une machine virtuelle exécutée à partir de la partition bootcamp:

VMware Fusion vous permet de lancer une partition Boot Camp déjà installée sans affecter sa capacité à démarrer en mode natif. Cela vous donne la possibilité d'accéder à une partition Boot Camp depuis Mac OS au moyen de Fusion, en redémarrant et en lançant Windows directement.

Notez cependant:

Il se peut que vous soyez invité à réactiver Windows car un matériel différent est reconnu par le système d'exploitation.

Source: VMware - Lancement de votre partition Boot Camp dans VMware Fusion


3
Ils vous recommandent d'installer d'abord leurs outils afin que le processus d'activation reconnaisse le même "matériel" dans les deux situations. Suivez les instructions ou vous finirez par parler aux serveurs d'activation Microsoft du téléphone.
Thorbjørn Ravn Andersen

@ ThorbjørnRavnAndersen bon conseil - merci
magma

7

Je l'ai fait . C'est très utile, mais il y a quelques limitations et sa mise en place n'est pas triviale.

  • Le système d'exploitation natif ou virtuel doit être tolérant vis-à-vis du matériel sur lequel il s'exécute. La plupart des distributions Linux ne s’y intéressent pas et ne tournent que sur tout ce sur quoi vous l’amorcez tant que l’architecture du processeur correspond. Ce n'est pas si facile avec Windows. Vous pouvez également faire face à des problèmes d'activation / de licence.

  • Sous Windows, vous ne pouvez pas démarrer le système d'exploitation d'une machine virtuelle tant que sa partition est montée sur l'hôte. Ce n'est pas un gros problème, car dans ce cas, vous voudriez probablement démarrer Linux sous Windows et Windows ne supporte pas les extsystèmes de fichiers de toute façon.

  • La configuration des chargeurs de démarrage est délicate. Vous avez besoin d'une configuration de démarrage distincte pour démarrer sur la VM et pour démarrer en mode natif. J'ai utilisé Grub4DOS / NeoGrub comme chargeur de démarrage de la 1ère étape lors du démarrage natif, puis j'ai été capable de charger en chaîne le chargeur de démarrage Windows ou de démarrer dans Ubuntu. La machine virtuelle avait un petit disque (quelques Mo) monté avec une priorité plus élevée que le disque principal. Ce lecteur contenait GRUB2, installé manuellement, que j’utilisais pour démarrer Ubuntu dans VM.

  • Une configuration inhabituelle du chargeur de démarrage nécessite une mise à jour minutieuse. Par exemple, la mise à jour de GRUB lors de l'exécution native de Linux peut rompre la chaîne du chargeur de démarrage. La mise à jour à l'intérieur de la VM nécessite son installation manuelle sur la partition de démarrage.


0

Cela est possible assez facilement .. Si vous utilisez des disques durs séparés pour chaque installation!

Regardez par exemple ici: http://www.serverwatch.com/server-tutorials/using-a-physical-hard-drive-with-a-virtualbox-vm.html - ou recherchez sur le site Web de VirtualBox (qui est en panne pour le moment) pour ces mots clés.

Je l'utilise pour pouvoir accéder à ma partition Linux lorsque je travaille avec Windows, comme Adobe ou d'autres choses qui ne s'exécutent pas correctement sous Wine ou dans Virtualisation de Windows sous Linux.

De plus, parce que j'accède souvent à ma tour à distance - et que tout mon disque dur Linux est chiffré, alors que mon disque dur Windows n'est pas et ne contient que des données non sensibles. Je lance donc Windows (l'entrée Windows dans GRUB est présélectionnée), me connecte à Teamviewer, lance Virtualbox, puis mon disque dur Linux.

Dans cette direction - Windows -> Virtualbox -> autre disque dur avec Linux -> il est possible très simple, en raison de la détection matérielle supérieure, à la volée, que Linux, à savoir Ubuntu, prend en charge.

Dans l'autre sens, vous allez vous retrouver avec un gâchis. Windows ne ressemble pas toujours à un changement de matériel .. Il pourrait gâcher votre système, ne pas démarrer du tout, ou même s'il le faisait, peut-être que votre licence n'est plus valide parce que trop de modifications de matériel surviennent trop souvent.

Cela dit, vous voulez conserver Windows en tant qu'entrée de démarrage présélectionnée dans GRUB, mais veillez à bien sélectionner la bonne entrée dans GRUB lors de son exécution dans Virtualbox. Si vous rencontrez des problèmes de retard à distance, augmentez le délai de démarrage dans GRUB pour plus de sécurité.

J'espère que ça vous a aidé :)

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.