(3) 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, il y a plusieurs solutions :
- soit créer une image iso bootable de
Grub1 ou de
Grub2,
- soit créer une image disquette de démarrage windows avec
NTLDR,
- soit créer une image disquette de démarrage windows manuellement avec
Virtual Floppy Drive.
Dans les trois cas, tout se passe en ligne de commande, ou presque... À toi de choisir laquelle des trois solutions tu préfères.
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 ; NTLDR
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 Windows XP
root (hd0,3)
chainloader +1
Il faut supprimer tous les blocs de texte faisant référence à Ubuntu, seul le bloc de texte qui parle de windows nous intéresse et doit donc rester intact. Cependant, si en dessous du «
title Windows XP », 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?p=9232654#post9232654
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
.
Gestionnaire de démarrage : NTLDR
a) On va commencer par créer un répertoire de travail et télécharger le fichier nécessaire.
Dans un Terminal, saisir les commandes suivantes :
Ne pas fermer le Terminal tout de suite.
b) Maintenant il va falloir modifier le
boot.ini de cette image disquette. Opération très simple puisqu'il suffit juste de le remplacer par celui qui se trouve sur la partition de windows.
# montage de l'image
mkdir ./tmp
sudo mount -o loop boot_xp.img ./tmp/
# copie du fichier boot.ini (à adapter selon la situation : ici la partition de windows est montée dans le répertoire /media/windows/)
sudo cp /media/windows/boot.ini ./tmp/
# démontage et déplacement de l'image dans le répertoire de VirtualBox
sudo umount ./tmp/
mv boot_xp.img ~/.VirtualBox/
# suppression du répertoire de travail
cd ; rm -rv ~/travail/
L'image créée se nomme
boot_xp.img et se trouve maintenant dans le dossier caché de VirtualBox.
Cette dernière fait environ 1,4 Mo 🙂.
Gestionnaire de démarrage : NTLDR avec Virtual Floppy Drive
Du fait que cela revienne au même que l'explication précédente, rends-toi directement à
l'explication de GMoulinCH
.