#1 Le 13/12/2009, à 19:51
- luigifab
[HowTo] Démarrer un Linux installé physiquement dans VirtualBox
Envie de démarrer un système Linux installé physiquement dans VirtualBox ?
C'est possible ! Suivez le guide...
Attention : Retour en mono-cœur pour le système invité
- L'IO-APIC est nécessaire pour profiter du multi-cœur, cependant en l'activant, le système invité est anormalement lent.
- Ceci est valable uniquement lorsque ce dernier est démarré sous VirtualBox.
↣ Pour que ce soit bien clair, dans le tutoriel Ubuntu 9.10 Karmic Koala est le système hôte et Fedora 12 Constantine est le système invité. Tous les deux sont installés physiquement sur les partitions /dev/sda1 et /dev/sda4 du disque dur.
- Le système hôte est Ubuntu, mais cela pourrait être aussi bien n'importe quelle autre distribution, cela ne changerait rien, à partir du moment où VirtualBox fonctionne sur le système hôte.
- Le système invité est sur le disque dur interne, mais celui-ci pourrait aussi bien se situer sur n'importe quel autre type de média, comme un disque dur externe, une clef usb ou une carte mémoire, la seule chose qui changerait c'est le chemin d'accès du périphérique (/dev/sda4).
↣ Ce tutoriel a été réalisé sous VirtualBox 3.0.8 OSE et permet de faire démarrer un système Linux installé physiquement dans VirtualBox. Il reste valable pour les versions suivantes de VirtualBox.
Il est divisé en 3 parties :
Introduction
1 Mapping du disque dur
2 Configuration du gestionnaire de démarrage
3 Création de la machine virtuelle
Conclusion
Liens à consulter :
- Documentation sur VirtualBox
- Documentation réseau pour VirtualBox
- Configuration réseau de VirtualBox
- Documentation sur la sauvegarde
- Démarrer un système Windows installé physiquement dans VirtualBox
Sources :
- Boot an existing XP (Physical HD) install with VirtualBox (ubuntuforums.org)
- Use Physical disk (forums.virtualbox.org)
Dernière mise à jour : Jeudi 7 Juin 2012
Dernière modification par luigifab (Le 08/08/2018, à 13:58)
Free Ukraine!
Hors ligne
#2 Le 13/12/2009, à 20:16
- luigifab
Re : [HowTo] Démarrer un Linux installé physiquement dans VirtualBox
(1) Mapping du disque dur
Au jour d'aujourd'hui, VirtualBox ne peut pas utiliser un disque dur réel directement. Pour pallier ce manque, nous allons mapper la partition ou est installé le système que l'on veut démarrer avec l'outil VBoxManage.
Mots clés : Partitions ; Gparted ; Terminal ; Utilisateurs et Groupes ; sudo ; usermod
a) Mais avant d'aller plus loin, il est nécessaire de savoir sur quelle partition est installé le système en question. Pour le savoir, on peut par exemple utiliser l'éditeur de partition Gparted. Dans la suite j'admets qu'il se trouve sur /dev/sda4, donc sur la partition numéro 4 du disque dur numéro 1.
b) Pour pouvoir utiliser VBoxManage et le fichier qu'il génère, il est nécessaire d'ajouter son compte utilisateur au groupe « disk ». Rien de très compliqué la dedans, voici deux solutions :
- Soit en allant dans Système » Administration » Utilisateurs et groupes ; cliquer sur le bouton Gérer les groupes ; rechercher le groupe « disk » ; et le modifier en cochant l'identifiant de sa session dans la liste.
- Soit en utilisant le Terminal et en tapant la commande « sudo usermod -G disk -a luigifab » en prenant bien soin de remplacer luigifab par l'identifiant de sa session.
Attention, pour que le changement soit pris en compte, il faut redémarrer sa session.
Alors à tout de suite ...
c) VBoxManage est un programme qui s'utilise en ligne de commande.
On a donc besoin du Terminal :
# direction le répertoire de VirtualBox
cd ~/.VirtualBox/# mapping du disque dur (à adapter selon la situation)
VBoxManage internalcommands createrawvmdk -filename fedora.vmdk -rawdisk /dev/sda -partitions 4 -relative
Cette dernière commande génère deux fichiers de moins de 50 Ko dans le dossier caché de VirtualBox : fedora.vmdk et fedora-pt.vmdk. À bien noter que rien n'est fait sur le disque dur, hormis les deux fichiers qui sont créés dans le répertoire de VirtualBox .
Dans le cas ou le disque serait inaccessible, il faut réessayer en supprimant l'option -relative.
Très important : dans le cas où le numéro de partition n'est pas spécifié, la machine virtuelle aura accès au disque dur entier.
De ce fait, l'étape suivante, à savoir la configuration du gestionnaire de démarrage, n'est plus nécessaire.
Dernière modification par luigifab (Le 09/06/2012, à 11:50)
Free Ukraine!
Hors ligne
#3 Le 13/12/2009, à 20:17
- luigifab
Re : [HowTo] Démarrer un Linux installé physiquement dans VirtualBox
(2) Configuration du gestionnaire de démarrage
Maintenant que VirtualBox a accès à la partition numéro 4 du disque dur numéro 1, un gestionnaire d'amorçage permettant de démarrer le système s'impose. En effet, étant donnée que VirtualBox n'a accès qu'à une partie du disque dur, il ne peut donc pas démarrer le gestionnaire d'amorçage déjà présent sur le disque.
Pour résoudre ce problème, on va créer une image iso bootable de Grub.
Note bien que cela ne modifiera en aucun cas le gestionnaire de démarrage qui est installé .
Mots clés : Terminal ; sudo ; mount ; Grub1 ; Grub2 ; Grub
Gestionnaire de démarrage : Grub1
a) On va commencer par créer un répertoire de travail et copier les fichiers nécessaires.
Dans un Terminal, saisir les commandes suivantes :
# création d'un dossier de travail
mkdir ~/travail
cd ~/travail/# création de l'arborescence
mkdir -p iso/boot/grub# copie des fichiers nécessaires
cp /usr/lib/grub/*-pc/stage2_eltorito /boot/grub/menu.lst iso/boot/grub
Ne pas fermer le Terminal tout de suite.
b) Maintenant que nous avons récupéré la configuration de Grub, il va falloir la modifier. En effet, les instructions qui permettent de faire démarrer Ubuntu ne seront pas nécessaires ici.
Pour éditer la configuration, un simple éditeur de texte fera l'affaire.
Il faut ouvrir le fichier menu.lst contenu dans le répertoire ~/travail/iso/boot/grub/.
À la fin du fichier, il devrait y avoir quelque chose de semblable :
title Ubuntu 9.10, kernel 2.6.31-17-generic
uuid bec46f24-aa91-4a42-a1e6-f34da429dfd6
kernel /boot/vmlinuz-2.6.31-17-generic root=UUID=bec46f24-aa91-4a42-a1e6-f34da429dfd6 ro vga=791
initrd /boot/initrd.img-2.6.31-17-generictitle Ubuntu 9.10, kernel 2.6.31-17-generic (recovery)
lock
uuid bec46f24-aa91-4a42-a1e6-f34da429dfd6
kernel /boot/vmlinuz-2.6.31-17-generic root=UUID=bec46f24-aa91-4a42-a1e6-f34da429dfd6 ro single vga=791
initrd /boot/initrd.img-2.6.31-17-generictitle Fedora 12, kernel 2.6.30-17-generic
uuid fgh4524-gslo-gskf-hgth-f34da42gdbki
kernel /boot/vmlinuz-2.6.30-17-generic root=UUID=fgh4524-gslo-gskf-hgth-f34da42gdbki ro vga=791
initrd /boot/initrd.img-2.6.30-17-generictitle Fedora 12, kernel 2.6.30-17-generic (recovery)
lock
uuid fgh4524-gslo-gskf-hgth-f34da42gdbki
kernel /boot/vmlinuz-2.6.30-17-generic root=UUID=fgh4524-gslo-gskf-hgth-f34da42gdbki ro single vga=791
initrd /boot/initrd.img-2.6.30-17-generic
Il faut supprimer tous les blocs de texte faisant référence à Ubuntu, seul les blocs de texte qui parle de Fedora nous intéressent et doivent donc rester intact. Cependant, si en dessous des « title Fedora 12 », il y a l'option « savedefault », il faut impérativement la supprimer.
c) Maintenant que notre Grub est configuré correctement, on va pouvoir créer l'image iso bootable :
# création de l'image iso
mkisofs -R -b boot/grub/stage2_eltorito -no-emul-boot -boot-load-size 4 -boot-info-table -o grub.iso iso# déplacement de l'iso dans le répertoire de VirtualBox
mv grub.iso ~/.VirtualBox/# suppression du répertoire de travail
cd ; rm -rv ~/travail/
L'image créée se nomme grub.iso et se trouve maintenant dans le dossier caché de VirtualBox.
Cette dernière fait à peine 500 ko .
Gestionnaire de démarrage : Grub2
Étant donné que Grub2 n'a rien à voir avec Grub1, la procédure précédente ne fonctionne pas.
Cependant, le tutoriel n'en dit pas plus pour le moment...
Entre temps, j'ai trouvé ceci : http://ubuntuforums.org/showthread.php? … ost9232654
La commande proposée (grub-mkrescue --output=~/.VirtualBox/rescue.iso /boot/grub) fabrique bien une image iso bootable avec la bonne configuration. Cependant, le démarrage n'est pas automatique, il faut taper configfile /grub.cfg pour lancer le système.
J'ai pas trouvé comment lui dire de charger ce fichier automatiquement.
Voir l'explication de Vaderf.
Dernière modification par luigifab (Le 29/11/2010, à 19:31)
Free Ukraine!
Hors ligne
#4 Le 13/12/2009, à 20:17
- luigifab
Re : [HowTo] Démarrer un Linux installé physiquement dans VirtualBox
(3) Création de la machine virtuelle
Le temps est venu de démarrer VirtualBox.
a) Nous allons maintenant créer une nouvelle machine virtuelle dans VirtualBox.
Voici un exemple de machine :
Nom de la machine : Fedora 12 Constantine
Type de système d'exploitation : Fedora (64 bits)
Mémoire vive : 512 Mo
Disque dur : il faut utiliser le fichier fedora.vmdk que nous avons créé au point numéro 1.
b) Maintenant que la machine virtuelle existe, il est nécessaire de la configurer correctement pour que le système invité puisse démarrer en toute sécurité.
Les quelques options de configuration ci-dessous doivent obligatoirement être configurées comme indiquées, sinon le système ne démarrera pas. Pour le reste, c'est comme tu veux.
» Système, onglet carte mère :
- Ordre d'amorçage : Disque optique / Disque dur
- Activer l'ACPI : doit être coché
- Activer l'IO-APIC : doit être décoché
» Disque Optique :
- Fichier image ISO : il faut utiliser l'image grub.iso créée au point numéro 2.
Si cette case est cochée, la machine virtuelle supportera l'APIC entrée/sortie (IO-APIC), ce qui peut légèrement diminuer la performance de la machine virtuelle. Note : ne désactivez pas ce paramètre après l'installation d'un système d'exploitation windows !
C'est tout à fait exact, la machine perd même énormément de performance. C'est pour cette raison qu'il ne faut surtout pas activer cette option, même si en faisant cela, on perd la gestion du multi-cœur pour le système invité.
c) Pour résumer, rien ne vaut une jolie capture d'écran :
Avec VirtualBox 4, les noms des menus ont changés (capture d'écran à titre d'information) :
Dernière modification par luigifab (Le 07/06/2012, à 17:40)
Free Ukraine!
Hors ligne
#5 Le 13/12/2009, à 20:17
- luigifab
Re : [HowTo] Démarrer un Linux installé physiquement dans VirtualBox
Conclusion
» Voilà, tu peux maintenant profiter pleinement du système Linux qui est installé physiquement dans VirtualBox (exemple en image ), ce tutoriel touche donc à sa fin.
Questions ? Remarques ? Idées ? Erreurs ?
Dernière modification par luigifab (Le 09/10/2010, à 09:50)
Free Ukraine!
Hors ligne
#6 Le 15/12/2009, à 20:20
- brazz
Re : [HowTo] Démarrer un Linux installé physiquement dans VirtualBox
Ca serait parfait si au lieu de placer ce tuto ici, tu le mettais plutôt dans la doc (quitte à faire un lien) dans http://doc.ubuntu-fr.org/tutoriel/ <ton titre de tuto> car les forums sont fait pour la discussion et le dépannage, non pour la doc ou de façon assez provisoire.
Dès que la doc VirtualBox relookée et actualisée est -enfin- prête (début 2010 car avant je suis en vacances dans une ile sans internet...), je ferai un lien sur ton tuto.
En tout cas merci et bravo!
Dernière modification par brazz (Le 15/12/2009, à 20:21)
Essayez, essayez, il en restera quelque chose...l'impossible n'est que ce qui n'a pas encore été réussi
Et se souvenir que l'élément le moins fiable du système se trouve entre la chaise et le clavier
Que Saint Torvalds nous assiste !
Hors ligne
#7 Le 15/12/2009, à 20:48
- omnimax
Re : [HowTo] Démarrer un Linux installé physiquement dans VirtualBox
parfait ton intervention, mais comme dit plus haut, une intervention dans la doc serait top....au moins à part nous deux cela servirait encore plus. Bonne soirée
14.04 unity et Linux Mint KDE 13 zsh-meilleur shell script fire
Hors ligne
#8 Le 16/12/2009, à 01:26
- AlexandreP
Re : [HowTo] Démarrer un Linux installé physiquement dans VirtualBox
Encore meilleur que de poster le tutoriel dans la documentation d'Ubuntu : l'inscrire directement chez VirtualBox ! En effet, ce tutoriel fonctionne sur l'ensemble des distributions Linux et permet de charger n'importe quelle distribution Linux.
Comme ce n'est pas spécifique à Ubuntu et que cela peut profiter à l'ensemble des communautés d'utilisateurs de Linux, il est préférable de poster à la source, c-à-d chez VirtualBox. Par exemple, transférer le contenu de ce tutoriel dans le forum "VirtualBox on Linux Hosts" du site de VirtualBox, puis demander son inclusion dans la liste des tutoriels. Pour que cela profite au plus de gens possible, une traduction en anglais peut être écrite (je peux m'en charger, au besoin).
«La capacité d'apprendre est un don; La faculté d'apprendre est un talent; La volonté d'apprendre est un choix.» -Frank Herbert
93,8% des gens sont capables d'inventer des statistiques sans fournir d'études à l'appui.
Hors ligne
#9 Le 08/01/2010, à 17:19
- Babilomax
Re : [HowTo] Démarrer un Linux installé physiquement dans VirtualBox
Merci pour ce tuto.
Ce processus est-il applicable sur Mac (pour virtualiser mon Ubuntu) ?
Hors ligne
#10 Le 08/01/2010, à 21:34
- luigifab
Re : [HowTo] Démarrer un Linux installé physiquement dans VirtualBox
Oui. Et d'ailleurs ça fonctionne sur tous les systèmes sur lesquelles VirtualBox peut fonctionner.
Dernière modification par luigifab (Le 10/01/2010, à 13:20)
Free Ukraine!
Hors ligne
#11 Le 09/01/2010, à 13:30
- percherie
Re : [HowTo] Démarrer un Linux installé physiquement dans VirtualBox
Salut,
Je viens de rejoindre Brazz pour la reprise de la documentation VirtualBox et ton tuto est très intéressant à ajouter sur la documentation.
Après le placer sur le site officiel est intéressant à faire mais on peut compter sur l'ami google pour renvoyer tous ceux qui cherche sur la documentation. Je me suis rendu compte qu'un page de documentation mise à jour est disponible 1 heures après sur google, c'est peut être mieux prix en compte (coté google) que sur le site officiel ;-)
Nomade en camion utilisant Ubuntu. Si vous souhaitez suivre mes voyages : http://toutenkamion.net/
Hors ligne
#12 Le 09/01/2010, à 22:46
- Babilomax
Re : [HowTo] Démarrer un Linux installé physiquement dans VirtualBox
Oui mais sous Mac, pas de /boot, ni de menu.lst...
Pourtant c'est bien Grub sur les Macintel non ?
Hors ligne
#13 Le 09/01/2010, à 23:08
- luigifab
Re : [HowTo] Démarrer un Linux installé physiquement dans VirtualBox
Merci pour ce tuto.
Ce processus est-il applicable sur Mac (pour virtualiser mon Ubuntu) ?Oui mais sous Mac, pas de /boot, ni de menu.lst...
Pourtant c'est bien Grub sur les Macintel non ?
Heu sous Ubuntu, le /boot existe, en revanche le menu.lst pas forcément...
S'il existe pas, ça signifie que c'est Grub2, et donc que c'est pas la même démarche.
Free Ukraine!
Hors ligne
#14 Le 13/03/2011, à 21:43
- luigifab
Re : [HowTo] Démarrer un Linux installé physiquement dans VirtualBox
À tout hasard, avant que j'essaye, juste pour rigoler un peu, quelqu'un a t'il essayé de démarrer son système hôte dans VirtualBox ?
Note : j'ai pas dit qu'il fallait le faire...
Free Ukraine!
Hors ligne
#15 Le 25/06/2011, à 14:39
- frombenny
Re : [HowTo] Démarrer un Linux installé physiquement dans VirtualBox
Gestionnaire de démarrage : Grub2 (testé sous Natty avec VirtualBox 4.0.8)
Pré-requis :
* installer le paquet 'xorriso',
* être déclaré dans le groupe 'disk' et 'vboxusers' (Utilisateurs et groupes/Gérer les groupes)
Créer un dossier "config" pour /boot/grub depuis un terminal
mkdir -p config/boot/grub
Copier dans le dossier "grub" le contenu du /boot/grub du linux qu'on veut lancer
* Dans le gestionnaire de fichiers, on ouvre le dossier grub du linux à lancer,
* Ctrl A pour tout sélectionner
* Édition ou clic droit / Copier
* F3 pour partager la fenêtre en deux
* et on va dans le dossier /config/boot/grub vide (créé dans notre HOME)
* Édition ou clic droit / Coller
Éventuellement, ici on modifiera le grub.cfg avant qu'il soit intégré au grub.iso
Lancer la commande qui va créer le grub.iso (config étant le dossier créé plus haut)
grub-mkrescue --output=grub.iso config
Le fichier grub.iso n'est pas très encombrant : environ 7 Mo
Dernière modification par frombenny (Le 25/06/2011, à 14:48)
Hors ligne
#16 Le 15/12/2011, à 21:51
- luigifab
Re : [HowTo] Démarrer un Linux installé physiquement dans VirtualBox
@frombenny, quelques mois plus tard, juste histoire que je sache, le démarrage est-il automatique ?
Free Ukraine!
Hors ligne
#17 Le 30/09/2012, à 00:55
- loopx
Re : [HowTo] Démarrer un Linux installé physiquement dans VirtualBox
Petite question : pour ma Gentoo physique, à démarrer en virtuel ... si j'installe Grub sur sa partition (et pas sur la MBR), est-ce que je peux sauter l'étape de création du Grub dans la VM ? Car elle aura accès au boot + au fichier de la partition => tout le nécessaire
CentOS => tout type de serveur
Ubuntu => tout bon ordinateur
Lubuntu => sur du vieux matos ;-)
Wiki perso : http://pix.noip.me
Hors ligne
#18 Le 30/09/2012, à 11:51
- luigifab
Re : [HowTo] Démarrer un Linux installé physiquement dans VirtualBox
Je dirais oui, mais à tester.
Free Ukraine!
Hors ligne
#19 Le 30/09/2012, à 18:00
- loopx
Re : [HowTo] Démarrer un Linux installé physiquement dans VirtualBox
En passant, KVM ne permet pas de directement démarrer sur une partition physique (en ligne de commande ?) ???
CentOS => tout type de serveur
Ubuntu => tout bon ordinateur
Lubuntu => sur du vieux matos ;-)
Wiki perso : http://pix.noip.me
Hors ligne
#20 Le 02/07/2013, à 02:01
- oix02
Re : [HowTo] Démarrer un Linux installé physiquement dans VirtualBox
Bonjour je n'arrive pas à booter avec grub2 j'ai un message particulier :
http://img15.hostingpics.net/pics/83452 … 025510.png
y'a pas moyen d'avoir un iso de grub1 standard avec un bon vieux menu.lst pour ajouter manuellement et facilement la bonne entré parceque grub2 c'est une magnifique evolution qui a magnifiquement compliqué ce amorceur de démarrage !
Merci
Archlinux Rolling Release
/
Kubuntu 10.04 LTS
Hors ligne
#21 Le 22/07/2013, à 10:02
- luigifab
Re : [HowTo] Démarrer un Linux installé physiquement dans VirtualBox
Tu peux toujours supprimer Grub2 sur ton système, installé Grub1, faire l'image, et réinstaller Grub2.
Mais vu ton erreur, je pense que tu t'ai trompé d'uuid.
Free Ukraine!
Hors ligne
#22 Le 26/11/2014, à 15:44
- Plugpack
Re : [HowTo] Démarrer un Linux installé physiquement dans VirtualBox
Salut,
Et merci pour ce [HowTo] !
J'ai utilisé ton tutoriel en installant une Debian 7 sur une clé USB sans GRUB. J'ai juste utilisé SuperGrub2 poour faire booter ma machine ( http://www.supergrubdisk.org/category/d … sk-stable/ ).
Je tiens à préciser que ceci m'a juste permis de faire quelques tests pour vérifier le cloisonnement de la VM physique, vérifier si depuis celle-ci je peux atteindre la machine Host et voir le transfère de fichier.
Objectif premier : pouvoir lire depuis la machine Host sur le disque de la machine Invitée.
Problèmes : Même en mettant le .VMDK en partage, je n'arrive pas à voir depuis la machine Hôte un fichier "toto" créé depuis la machine invitée. Le seul moyen de le voir c'est d'éteindre ma machine invitée et de monter le disque sur ma machine Hôte.
Quelqu'un a une idée ?
Hors ligne
#23 Le 26/11/2014, à 15:50
- luigifab
Re : [HowTo] Démarrer un Linux installé physiquement dans VirtualBox
En effet, ce n'est pas un partage en temps réel (avec le vmdk pour l'accès au disque dur réel).
À la place, tu peux faire un simple partage de / dans virtualbox.
Free Ukraine!
Hors ligne
#24 Le 26/11/2014, à 16:06
- Plugpack
Re : [HowTo] Démarrer un Linux installé physiquement dans VirtualBox
Merci pour ta réponse rapide, mais j'ai justement utilisé ce tutoriel pour éviter d'utiliser le partage de virtualbox.
Celui-ci installe un paquet sur ma machine invitée et je ne veux pas qu'il en installe.
Hors ligne
#25 Le 26/11/2014, à 16:10
- luigifab
Re : [HowTo] Démarrer un Linux installé physiquement dans VirtualBox
Si tu ne veux pas utiliser le partage virtualbox sur l'invitée (et donc installer les addons), tu peux monter un partage NFS SFTP...
Peut être qu'il y a une possibilité pour la machine invitée d'interagir en temps réel sur le disque dur réel, faut chercher.
Free Ukraine!
Hors ligne