Existe-t-il un moyen de copier le système de fichiers du fichier .vdi de VirtualBox (ou d'autres fichiers de ce type) vers une partition physique sur un disque dur ?
Réponses
Trop de publicités?Il existe probablement un utilitaire pour faire cela, mais vous pouvez le faire assez facilement sans logiciel spécial, ce qui est toujours une astuce utile à connaître, car cela fonctionnera avec tout type de logiciel de virtualisation.
Il suffit de démarrer une image live dans la machine virtuelle avec le fichier .vdi attaché. Assurez-vous que la mise en réseau est activée et que la machine avec le disque cible et l'invité peuvent se voir mutuellement. Ensuite, dd la partition virtuelle et pipe à netcat sur l'invité, et le recevoir sur le système hôte avec netcat et écrire sur la partition avec dd.
Sur la machine cible, exécutez :
netcat -l -p 4444 | dd of=/dev/<target partition or disk>
Ça attendra. A l'intérieur de l'invité :
dd if=/dev/<source partition or disk> | netcat <target-machine-ip> 4444
Cela suppose que les dispositifs source et cible aient exactement la même taille, ce qui n'est probablement pas le cas.
Notez que la machine cible ne doit pas nécessairement être la machine hôte de virtualisation, elle peut être n'importe quelle machine que la machine invitée peut atteindre par le réseau.
Pour un logiciel spécial permettant de manipuler les images .vdi de diverses manières, voir : Monter une image de disque VirtualBox (vdi) ?
Vous devez copier le contenu du système de fichiers au lieu d'écrire une image sur un disque physique en mode binaire. Ceci est particulièrement recommandé pour les disques SSD avec support TRIM, car lorsque TRIM entre en action, il supprime des fichiers dont il n'a pas connaissance (il commence juste à nettoyer les blocs où il suppose qu'aucun fichier n'est stocké, ce qui est le cas pour tout ce qui est écrit en mode bit par bit sur un SSD). De plus, la copie de fichiers vers un nouveau système de fichiers défragmente automatiquement les fichiers pour vous.
Vous pouvez utiliser cp
ou rsync
avec le -a
en tant que root pour préserver les permissions et la propriété.
Enfin, vous devez réinstaller le boot loader, pour avoir un système d'exploitation de démarrage fonctionnel. boot loader et GRUB2 peuvent être réinstallés via un live CD avec la commande --boot-directory
Windows devrait fournir une fonctionnalité similaire sur son disque d'installation.
Vous pouvez convertir le fichier VDI en format RAW puis utiliser dd
pour copier l'image dans la partition.
Par exemple :
VBoxManage clonehd --format RAW file.vdi file.img
dd if=./file.img of=/dev/<partition_here>
Note : Utilisez sudo
si nécessaire. Faites attention lorsque vous spécifiez le bon appareil dans /dev
.
En rapport :