How can i Extract Files From VDI

I was using VirtualBox on my PC(WIN 7)

I managed to View some files in my .VDI file..

How can I open or view the contents of my .vdi file and retrieve the files from there?


Solution 1:

You can mount partitions from .vdi images using qemu-nbd:

sudo apt install qemu-utils
sudo modprobe nbd

vdi="/path/to/your.vdi"  # <<== Edit this

sudo qemu-nbd -c /dev/nbd0 "$vdi"

# view partitions and select the one you want to mount.
# Using parted here, but you can also use cfdisk, fdisk, etc.

sudo parted /dev/nbd0 print
part=nbd0p2 # <<== partition you want to mount

sudo mkdir /mnt/vdi
sudo mount /dev/$part /mnt/vdi

Some users seem to need to add a parameter to the modprobe command. I didn't with Ubuntu 16.04, but if it doesn't work for you, try adding max_part=16 :

sudo modprobe nbd max_part=16

When done:

sudo umount /dev/$part
sudo qemu-nbd --disconnect /dev/nbd0

Solution 2:

Try out VMXray.

You can explore your vmdk image right inside your browser. Select the files that you want to extract and extract them to the desired location. Not just vmdk, you can use VMXRay for looking into and extracting files from RAW, QEMU/KVM QCOW2, Virtualbox VDI, and ISO images. ext2, ext3, FAT and NTFS are current supported file systems. You can also use this to recover deleted photos from raw dumps of your camera's SD card, for example.

And, do not worry, no data from your files is ever sent over the network. Data never leaves your machine. VMXRay works completely inside your browser.