110 votes

Monter une image de lecteur VirtualBox (vdi) ?

Est-il possible de monter une image de disque VirtualBox (.vdi) afin que son contenu puisse être visualisé dans Nautilus, etc.

J'ai un Windows 2000 .vdi qui ne démarre pas ("périphérique de démarrage inaccessible") après la mise à jour de VirtualBox 2.x à 3.1.6. Je pense que les détails du lecteur IDE ont changé et que tout ce que j'ai à faire est d'accéder à l'image du lecteur interne et de modifier le fichier .vdi de Windows. boot.ini pour pointer vers le nouvel emplacement.

128voto

firebird84 Points 767

Utilisez qemu-nbd le processus est expliqué sur le défaut du serveur y dans ce blog .

En gros, vous devrez installer qemu si nécessaire :

sudo apt-get install qemu

Ensuite, vous devrez charger le dispositif de blocage de réseau module :

sudo rmmod nbd
sudo modprobe nbd max_part=16

Attachez l'image .vdi à l'un des nbd que vous venez de créer :

sudo qemu-nbd -c /dev/nbd0 drive.vdi

Vous obtiendrez maintenant un périphérique de bloc /dev/nbd0, ainsi que plusieurs nœuds de périphériques de partition /dev/nbd0p*.

sudo mount /dev/nbd0p1 /mnt

Une fois que vous avez terminé, démontez tout et déconnectez le périphérique :

sudo qemu-nbd -d /dev/nbd0

64voto

Vojtech Trefny Points 14011

Vous pouvez convertir en image standard et ensuite la monter.

VBoxManage clonehd --format RAW ubuntu.vdi ubuntu.img

Puis

mount -t ext3 -o loop,rw ./ubuntu.img /mnt

Vous devez SAVOIR quel est le type de système de fichiers, ext3 dans ce cas. Une fois qu'il est monté, allez-y et éditez-le avec l'éditeur de votre choix. Ne confondez pas les fichiers dans le répertoire /mnt avec l'hôte en fonctionnement, ou il sera mauvais.

Pour vérifier les détails de votre fichier VDI, exécutez : VBoxManage showhdinfo ubuntu.vdi .

Source : [SOLVÉ] Ouvrir un .vdi avec un gestionnaire d'archives ? - ubuntuforums.org

37voto

David Osborn Points 1232

On dirait que vdfuse est l'outil que vous recherchez. Il se trouve dans les dépôts d'Ubuntu. Si vous voulez compiler vous-même (source 2010) vous pouvez faire cela aussi .

Cependant, pour la plupart d'entre nous, cela se résume à une simple question :

sudo apt-get install virtualbox-fuse

Il semble qu'il prenne également en charge les vdi dynamiques.

Et pour monter le .vdi dans /mnt dir utiliser la commande :

sudo vdfuse -a -f /path-to-vdi-file /mnt

Le disque entier sera monté avec des partitions Partition1 , Partition2 format de nommage. Ensuite, ces fichiers peuvent être montés en boucle. Par exemple,

sudo mount -o loop /mnt/Parition1 /mountpoint

16voto

josef Points 273

Définissez le disque comme maître secondaire pour un autre OS virtuel, puis démarrez dans cet OS (virtuel) et vous pourrez le monter.

Étape 1 : En supposant que vous avez un os virtuel (disons Ubuntu 16.04) déjà installé dans Virtual box, ajoutez un nouveau stockage à partir des paramètres de cet os virtuel. enter image description here

Étape 2 : Parcourez le fichier Vdi auquel vous voulez accéder et sélectionnez-le.

Étape 3 : Se connecter à l'OS virtuel.

Étape 4 : Le disque virtuel sera probablement disponible à l'intérieur de l'OS. Si ce n'est pas le cas, suivez l'étape 5

Étape 5 : Dans l'OS virtuel, utilisez Gparted et vérifiez les disques. Assurez-vous que le disque est du type accessible par l'OS virtuel. S'il ne l'est pas, vous devrez peut-être modifier le disque, mais vous perdrez alors le contenu existant.

7voto

Lorin Hochstein Points 11816

Je n'ai pas testé moi-même mais il existe un module de fusibles pour les monter ( vdfuse ), consultez la page suivante :

Veuillez noter que son utilisation pour l'accès en écriture est risquée.


Utilisation :

$ ./vdfuse-v<version> -h
USAGE: ./vdfuse [options] -f image-file mountpoint
   -h   help
   -r   readonly
   -t   specify type (VDI, VMDK, VHD, or raw; default: auto)
   -f   VDimage file
   -a   allow all users to read disk
   -w   allow all users to read and write to disk
   -g   run in foreground
   -v   verbose
   -d   debug

Pour monter une image directement en utilisant son nom de fichier :

$ ./vdfuse-v<version> -f image.vdi /mnt/vdi
$ mount -o loop /mnt/vdi/Partition1 /mnt/WindowsXP

Pour monter un disque de machine (y compris les snapshots) :

$ ./vdautomount-<version> -p /path/to/vdfuse WinXP /mnt/vdi
$ mount -o loop /mnt/vdi/Partition1 /mnt/WindowsXP

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X