web-dev-qa-db-fra.com

Impossible d'exécuter Ubuntu natif dans la virtualbox avec un vmdk créé à l'aide de la commande createrawvmdk avec les partitions spécifiées

J'ai une configuration à double démarrage Win7 x64 et Ubuntu 11.10 x64 sur un seul disque dur.

Je voulais exécuter Ubuntu natif en tant que système d'exploitation invité dans Virtual-box s'exécutant sur l'hôte Win7.

J'ai utilisé la commande suivante pour lister les partitions:

C:\ >vboxmanage internalcommands listpartitions -rawdisk \\.\physicaldrive0
Number  Type   StartCHS       EndCHS      Size (MiB)  Start (Sect)
1       0x07  0   /32 /33  153 /27 /2           1200         2048
2       0x07  153 /27 /3   1023/254/63        363337      2459648
5       0x82  1023/254/63  1023/254/63          9537    746575872
6       0x83  1023/254/63  1023/254/63         46430    766107783
7       0x83  1023/254/63  1023/254/63         46431    861200384
4       0x07  1023/254/63  1023/254/63         10000    956291072

Ensuite, j'ai créé le fichier vmdk comme suit (en spécifiant les partitions Ubuntu 5,6 & 7):

C:> vboxmanage internalcommands createrawvmdk -filename "C:\ubuntu_01.vmdk" -rawdisk \.\Physicaldrive0 -partitions 5,6,7


Le fichier vmdk a été créé avec succès, mais lorsque j’ai créé un VM et spécifié ce lecteur virtuel, le VM ne démarre pas, il n’ya qu’un écran blanc, noir et blanc curseur dans le coin en haut à gauche. Il ne même pas afficher le menu de démarrage Grub.

Ensuite, j'ai créé un autre fichier vmdk sans spécifier les partitions.

C:> vboxmanage internalcommands createrawvmdk -filename "C:\ubuntu_02.vmdk" -rawdisk \.\Physicaldrive0

Cette fois, la VM démarre et Ubuntu démarre correctement à l'intérieur de la VM (le menu de démarrage grub 2 est présenté et lors de la sélection d'Ubuntu, il démarre correctement).

Comment puis-je utiliser uniquement les partitions ubuntu natives spécifiques au lieu du disque entier pour le système d'exploitation ubuntu invité dans la virtualbox? S'il vous plaît aider.

Hôte: Win 7 x64
Invité: Ubuntu 11.10 x64
Version Vbox: 4.1.6 r74713 avec les derniers ajouts invités installés.

4
Zaki

J'ai trouvé une solution de travail parfaitement. sda7 est la partition sur laquelle j'ai installé Linux, 5,6,7 est la partition native que je veux virtualiser et "ceztko" est ma maison: P

  • depuis le natif linux, réinstallez le fichier grub dans le partition linux native: Sudo grub-install --force /dev/sda7
  • copiez le secteur de démarrage de la partition dans votre maison: # dd if=/dev/sda7 of=/home/ceztko/virtualbox-native.mbr bs=512 count=1
  • copier virtualbox-native.mbr sur votre installation Windows
  • Redémarrez sous Windows et à partir de l'invite de l'administrateur:

    VBoxManage internalcommands createrawvmdk -filename C:\users\ceztko\ubuntu.vmdk -rawdisk \\.\PhysicalDrive0 -partitions 5,6,7 -mbr c:\users\ceztko\Dropbox\resources\virtualbox-native.mbr

  • Exécutez VirtualBox et assignez le nouveau lecteur virtuel à la machine virtuelle.
  • Prendre plaisir!

Cela peut être un bug dans Virtualbox. Mais mieux, je suppose qu’il ya un bogue dans grub, perturbé par les partitions Windows non accessibles lorsqu’il est installé en tant que mbr sur le disque d’amorçage.

4
ceztko

Dès que vous démarrez Ubuntu à partir d'un disque dur réel "virtualisé" avec la méthode que vous avez mentionnée, il ne trouvera pas son gestionnaire d'amorçage Grub, car dans votre paramètre de double amorçage, Grub réside probablement dans le MBR de la première partition (d'amorçage) de votre disque dur physique. . À partir de là, Grub décide de votre choix pour démarrer Windows ou Ubuntu.

Si vous voulez démarrer Ubuntu à partir d'une machine virtuelle, vous avez besoin d'un gestionnaire de démarrage (Grub) de la même manière que sur un système réel.

Pour ce faire, vous devez soit installer Grub sur votre partition Ubuntu, soit créer une petite partition de démarrage pour Grub qui pourrait facilement être ajoutée à votre machine virtuelle. Lisez ici , et dans le manuel GNU Grub pour plus de détails.

Avertissement: Les deux méthodes peuvent casser votre configuration à double démarrage ou rendre votre système Windows ou Ubuntu impossible à démarrer si vous avez mal fait quelque chose.


Le moyen sûr:

Un moyen beaucoup plus sûr d'accéder à votre hôte et aux données de votre invité consiste à installer Ubuntu sur son propre VDI 10-15 Go et à monter votre hôte /home dans l'OS invité pour l'accès aux données. Ce faisant, vous pourrez également charger des modules du noyau hôte ou invité sans interrompre l'installation de Host Ubuntu.

4
Takkat

J'avais un problème similaire et je l'ai résolu un peu différemment, c'est-à-dire sans démarrer dans le Linux natif.

Si vous avez spécifié le paramètre -partitions pour le fichier .vmdk rawdisk, une image du MBR et de certains secteurs ultérieurs est également créée. Vous pouvez écraser celle-ci directement dans Linux virtuel sans affecter les secteurs physiques d'origine. Vérifiez le fichier vmdk pour référence. Dans mon cas, l’image plate couvrait les premiers 32kb.

Pour pouvoir démarrer sous Linux virtuel pour la première fois, vous pouvez utiliser, par exemple, l'image ISO SuperGrubDisk . Après un démarrage réussi, corrigez le MBR à partir de l'installation locale dans l'environnement virtuel comme d'habitude.

Notez que si vous souhaitez installer grub sur votre MBR virtuel, il se peut que le MBR ne soit pas assez grand pour contenir l’ensemble de l’image grub. Vous ne le remarquez que si vous essayez de démarrer le système. Dans ce cas, vous pouvez agrandir l’image plate représentant les premiers secteurs de votre disque dur. Vous devez adapter le fichier .vmdk en conséquence.

1
user1149304

La solution complète:

La place normale d'un chargeur de système d'exploitation, Grub en est un, est "sur le PBR", à l'intérieur de la partition. Et c'est l'endroit le plus sûr contre sa destruction, au lieu de l'exposer sur le MBR.

Et cela oblige Linux à démarrer de manière conventionnelle, en chargeant le PBR et en l'exécutant. GAG est un programme de Nice permettant d’initialiser plusieurs unités et/ou d’amorcer des partitions logiques. Il est préférable de l’obtenir sur un CD du type SystemRescueCd avec une foule d’outils. Gravez le CD ou utilisez le fichier ISO et démarrez-le, puis sélectionnez GAG puis configurez-le, c'est fait.

Si vous ne suspendez/reprenez pas pendant 6 mois si Linux le permet, Tux vous accueille tous les jours. Merci pour le conseil que GAG ​​va réécrire ce MBR virtuel.

Et si vous pouvez contacter l'auteur de GAG, dites-lui:

  1. Mon éternel merci
  2. Qu'il devrait commencer la configuration avec un écran principal complètement rempli et laisser supprimer, réorganiser et modifier les icônes. Cela fait immédiatement une configuration déjà utilisable au lieu d’avoir à faire beaucoup de manipulations pour commencer.
0
Papou