Accueil > Linux > Divers > Transfert image VDI vers disque physique
Transfert image VDI vers disque physique
dimanche 31 janvier 2010, par
Le but ici est de transformer une image disque de VirtualBox (fichier avec l’extension vdi) pour l’envoyer sur un disque dur physique pour utilisation normal dans un PC.
Voir les mises en gardes en fin de page.
Avant de créer votre machine dans VirtualBox, il faut connaitre la taille du disque physique. Pour ce faire, nous allons utiliser la commande fdisk (nécessite les droits root), il faut connaitre le nom du disque dans /dev/ dans mon exemple, le disque de destination sera /dev/sdc
fdisk -l /dev/sdc
Le résultat devrait être de ce type (les partitions pourront être différentes suivant l’ancienne configuration de votre disque) :
Disk /dev/sdc: 82.0 GB, 81964302336 bytes
255 heads, 63 sectors/track, 9964 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x000c19dc
Device Boot Start End Blocks Id System
/dev/sdc1 * 1 12 96358+ 83 Linux
/dev/sdc2 13 9790 78541785 8e Linux LVM
La ligne qui nous intéresse ici est la suivante, qui nous donne la taille de notre disque en bytes :
Disk /dev/sdc: 82.0 GB, 81964302336 bytes
Nous pouvons maintenant créer notre machine virtuelle dans VirtualBox et lors de la création du disque mettre la taille relevée plus haut. Soit pour mon cas 81964302336
Vous pouvez maintenant installer de manière classique votre OS dans VirtualBox.
Une fois que vous avez réalisé toutes les manipulations que vous vouliez dans VirtualBox, nous pouvons transformer notre image VDI.
Il est nécessaire d’avoir la taille du disque de destination disponible sur un autre disque pour effectuer les manipulations suivantes.
Création d’un répertoire qui recevra l’image disque convertie :
mkdir /chemin/avec/espace/disponible/convert
Transformation de l’image disque en raw :
VBoxManage internalcommands converttoraw ~/.VirtualBox/HardDisks/VirtualBox.vdi /chemin/avec/espace/disponible/convert/debian.raw
Mon image disque dans VirtualBox s’appelait VirtualBox.vdi et l’image transformée s’appellera debian.raw.
Nous pouvons maintenant transférer notre image disque de type raw sur le disque physique en utilisant la commande dd :
dd if=~/convert/debian.raw of=/dev/sdc bs=512
dd par défaut ne donne aucune statistique d’évolution de la copie mais il est tout de même possible de récupérer cette information en faisant un kill -USR1 dans une autre console :
kill -USR1 "num_PID_de_dd"
Vous devriez voir s’afficher les statistiques de copie sur la console où tourne dd.
A la fin de la commande dd, vous pouvez monter votre disque dans le PC de destination.
ATTENTION :
– Cette solution fonctionne bien avec Linux mais avec Windows, je ne suis pas sûr que cela fonctionne bien, car celui-ci est souvent trop lié au matériel
– Si le disque de destination est de type SATA dans VirtualBox, créez un device SATA et non IDE (par défaut) car vous pourriez rencontrer des soucis dans les noms de disques lors du démarrage sur le PC
– Il est préférable de supprimer le fichier /etc/udev/rules.d/70-persistent-net.rules avant d’arrêter votre machine hôte dans VirtualBox