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.

5voto

PHZ.fi-Pharazon Points 201

Comme Vojtech Trefny l'a mentionné plus haut,

1) convertissez d'abord votre VDI -> IMG

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

2) Puis monter l'IMG

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

3) Cependant, comme j'ai obtenu ce message d'erreur :

mount: wrong fs type, bad option, bad superblock on /dev/loop0,
       missing codepage or helper program, or other error
       In some cases useful info is found in syslog - try
       dmesg | tail  or so

et dmesg a dit :

[3105578.013671] EXT4-fs (loop0): VFS: Can't find ext3 filesystem

vous devez vérifier la structure de la partition du .img :

fdisk -l ubuntu.img

Disk ubuntu.img: 21.0 GB, 20971520000 bytes
255 heads, 63 sectors/track, 2549 cylinders, total 40960000 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xf45bc910

   Device Boot      Start         End      Blocks   Id  System
ubuntu.img1   *        2048    12582911     6290432   83  Linux
ubuntu.img2        12584958    16775167     2095105    5  Extended
ubuntu.img3        16775168    40959999    12092416   83  Linux
ubuntu.img5        12584960    16775167     2095104   82  Linux swap / Solaris

4) Comme vous pouvez le voir, la partition principale commence aux octets 16775168. Cependant, notez que la taille du secteur est de 512 octets, donc vous devez multiplier les résultats 16775168 x 512 = 8588886016 donc vous devez décaler le montage comme ceci :

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

5) En fait, cela n'a pas fonctionné pour moi dans le cas où le système de fichiers était sale après le redimensionnement. Dans ce cas, j'ai encore fait ceci :

dd if=ubuntu.img of=ubuntu.disk bs=512 skip=16775168 count=12092416
e2fsck ubuntu.disk
mount ubuntu.disk /mnt

3voto

JellicleCat Points 685

Ce n'est pas ce que vous avez demandé, mais si c'est juste une question de récupérer des fichiers sur le vdi et vous voulez une solution très rapide :

  1. Exécutez un serveur ssh sur votre hôte ( apt-get install openssh-server && service ssh restart )
  2. Utilisez VirtualBox pour construire une machine virtuelle à partir du fichier vdi existant, puis démarrez cette machine virtuelle. (J'ai simplement conservé l'adaptateur réseau (NAT) par défaut lors de la construction de la VM).
  3. Dans la machine virtuelle, sftp à votre hôte. ( sftp hostuser@hostip )
  4. Dans la session sftp, put autant de fichiers que nécessaire sur l'hôte.

3voto

user2683246 Points 133

Vous pouvez utiliser vboximg-mount qui fait partie des outils de la ligne de commande de VirtualBox.

1voto

C.S.Cameron Points 16079

P7Zip ouvrira les fichiers VDI

  • Installer P7Zip - Bureau de Ubuntu Software de ce lien ou en courant :

    sudo snap install p7zip-desktop
  • Lancement Bureau P7Zip et naviguez jusqu'au dossier contenant le .vdi (probablement sous VirtualBox VMs dans votre répertoire personnel)

  • Double-cliquez sur le fichier VDI dans la fenêtre de P7Zip.

  • Visualisez ou extrayez les fichiers comme vous le souhaitez.

0voto

user1118331 Points 1

Le site qemu l'approche de cette réponse a dû être modifié un peu pour fonctionner dans Ubuntu 20.04.1. D'abord, j'ai dû charger le nbd module, par :

lsmod | grep nbd
modprobe nbd

Cela n'a pas fonctionné :

sudo mount /dev/nbd0p1 /mnt

J'avais besoin de faire ça à la place :

sudo mount /dev/nbd0p2 /mnt

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