Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#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 big_smile ...


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 smile.

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é cool.

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-generic

title        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-generic

title        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-generic

title        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 tongue.



     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 Vaderflien.png.

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 1lien.png.


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 2lien.png.

À propos de l'IO-APIC, VirtualBox a écrit :

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 :

fedora.png

Avec VirtualBox 4, les noms des menus ont changés (capture d'écran à titre d'information) :

vbox4.png

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 img.png), 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
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. big_smile 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

Babilomax a écrit :

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 wink


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