Créer une image Virtualbox d'une partition physique


13

J'ai un lecteur avec Fedora et Windows 7 sur différentes partitions avec double démarrage.

Maintenant, tout en exécutant Fedora, je voudrais aspirer la partition Windows et créer une image que je peux exécuter dans VirtualBox - comment faire?


2
Avec quelques astuces, vous pouvez démarrer la partition directement.
shellholic

@shellholic: Comment cela se fait-il? pouvez-vous y répondre ici: superuser.com/q/463591/74616
Tamer Shlash

Réponses:


10

Il existe une fonction "interne" documentée qui pourrait vous intéresser. Vous pouvez créer une image de "disque brut" qui transmet essentiellement toutes les commandes à la partition de votre disque dur. De cette façon, vous pouvez également conserver votre partition Windows et tenter de la démarrer à partir de VirtualBox.

Vous pouvez créer une image brute comme suit:

VBoxManage internalcommands createrawvmdk -filename /path/to/file.vmdk -rawdisk /dev/sda -partitions 1,5

1,5signifie les partitions 1 et 5 sur/dev/sda

Rappelez-vous, les chances de ce fonctionnement sans faille sont assez minces. Windows n'est pas exactement connu pour s'adapter aux changements extrêmes du matériel.

Vous pouvez en savoir plus sur les disques bruts ici: 10.8.1. Utilisation d'un disque dur hôte brut à partir d'un invité


J'ai déjà fait ça auparavant, mais l'inverse. Utilisation d'un disque brut neuf pour une machine virtuelle dans Windows. Cela a parfaitement fonctionné, sauf un problème mineur avec la vidéo.
Keltari

5

Comme Matt l'a dit, vous utilisez la commande VBoxManage et Windows pourrait ne pas l'aimer. Cependant, il existe un moyen plus rapide qui n'utilise pas autant d'espace disque. Vous pouvez utiliser stdin comme entrée pour la convertrawcommande (qui, si vous lisez la réponse de Matt, est la même que la convertddcommande:

# dd if=$WinDevice | VBoxManage convertfromraw stdin windows.vdi $Bytes

Où $ WinDevice est le périphérique de la partition Windows (tel que / dev / sda2) et $ Bytes est le nombre exact d'octets (par exemple, 1488581554176; vous pouvez le déterminer à partir de Windows en cliquant avec le bouton droit sur le lecteur C: dans Poste de travail et en cliquant sur "Propriétés", c'est la ligne Capacité: sous les lignes d'espace utilisé et libre et au-dessus du graphique à secteurs).

Notez que je n'ai pas essayé cela moi-même et que je pense que vous devrez peut-être utiliser / dev / sda au lieu de / dev / sda2, en supposant que vous n'écrirez pas sur le lecteur sur lequel Windows est activé. De cette façon, vous capturez la table de partition et le chargeur de démarrage.


À partir de maintenant (actuellement le 22 février 2014), le nombre d'octets va après le nom du fichier de sortie.
echristopherson

Tu as raison. Fixé. Savez-vous si cela a toujours été le cas et que personne ne l'a remarqué jusqu'à présent, ou s'ils ont modifié l'ordre au cours des trois dernières années? Je suppose qu'ils ne changeraient pas la commande, mais je me serais également attendu à ce que quelqu'un le remarque maintenant.
Daniel H

Je ne sais pas si c'était jamais différent ... C'est en partie pourquoi je n'ai pas simplement édité la réponse.
echristopherson

2

J'essayais juste de faire à peu près la même chose, quoique depuis Ubuntu. Je ne voulais pas créer une image de l'ensemble du disque dur, et cela ne me semblait pas une bonne idée d'utiliser le disque physique avec la machine virtuelle. J'ai finalement trouvé la solution:

  1. (Recommandé) Si vous n'avez pas de disque Windows ou ISO, téléchargez un ISO. J'ai utilisé X17-59465.iso

  2. Si vous le souhaitez, réduisez la partition Windows afin que la taille de l'image soit plus petite. Je préfère le faire à partir de Linux en utilisant GParted (pour éviter les fichiers "umovable" qui sont en cours d'utilisation), puis redémarrez vers Windows, laissez-le faire un chkdsk et redémarrez à nouveau sous Linux.

  3. Si elle est montée, démontez la partition Windows juste pour vous assurer qu'elle ne change pas pendant la création d'image

    sudo umount /windows
    
  4. Installez le package MBR. Sur Ubuntu:

    sudo apt-get -y install mbr 
    
  5. Créez une image du MBR (changez l'appareil si nécessaire)

    sudo dd if=/dev/sda of=mbr.img bs=512 count=1
    
  6. Installez un nouveau MBR sur l'image, pour vous débarrasser de GRUB

    sudo install-mbr mbr.img
    
  7. Créez une image VMDK brute qui reflétera la disposition de partition existante (changez le périphérique et la partition si nécessaire)

    sudo vboxmanage internalcommands createrawvmdk -filename windows.vmdk -rawdisk /dev/sda -partitions 2 -mbr mbr.img
    
  8. Créez une image VDI qui copiera les données des partitions sélectionnées à l'étape précédente

    sudo vboxmanage clonehd windows.vmdk windows.vdi --format VDI
    
  9. Changer la propriété du nouveau fichier image

    sudo chown $USER. windows.vdi
    
  10. Nettoyer

    sudo rm mbr.img windows.vmdk windows-pt.vmdk
    
  11. (Facultatif) Compactez la nouvelle image disque

    vboxmanage modifyhd windows.vdi --compact
    
  12. Créez une nouvelle machine virtuelle Windows 7, en utilisant l'image que vous venez de créer pour le disque dur

  13. Vous pouvez essayer de démarrer la machine virtuelle, mais cela peut échouer. Si c'est le cas, démarrez la machine virtuelle sur le disque Windows / ISO → Réparer votre ordinateur , et si l'option vous est proposée, cliquez sur Réparer et redémarrer

Sources:


J'ai bien peur de ne pas faire ce que vous attendez de lui. clonehd créera vdi qui pointe vers le disque brut. C'est-à-dire qu'il clone le «pointeur» et non les données réelles. Il semble que dd soit un must pour la partition.
mlt

On pourrait penser cela, mais cela a fait un clone des données réelles. L'étape 7 a créé une image de ~ 1 Ko (qui pointait simplement vers le disque brut), mais la taille de l'image créée à l'étape 8 était la taille de toutes les partitions incluses, dans ce cas, 40 Go. Je sais également que c'était une copie parce que lorsque je démarre sur ma partition Windows, elle est différente de la machine virtuelle que j'ai créée à partir de celle-ci, sur laquelle j'ai apporté des modifications. -rw------- 1 root root 40G Feb 4 09:28 windows.vdi -rw------- 1 root root 722 Feb 4 09:11 windows.vmdk
bmaupin

0

J'avais un disque dur avec Windows 10 et je l'ai mis dans une machine VirtualBox. Pour y parvenir, j'ai suivi ces étapes:

  • Créez une machine VirtualBox pour Windows 10.
  • Important : lors de la création du disque dur, choisissez le type de disque dur virtuel.
  • Avec le gestionnaire de partitions Windows, il est possible de monter un disque dur virtuel comme un lecteur. Montez-le.
  • Téléchargez AOMEI Partition Assistant Standard ( http://www.disk-partition.com/ )
  • Utilisez AOEMI pour faire une copie du disque dur du disque dur avec Windows 10 vers le nouveau VHD monté.

C'est tout, lancez votre nouvelle machine VirtualBox.

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.