- gcc version 4 or later
- VirtualBox version 2 or later
- development headers (apt-get install build-essential on Ubuntu / Debian)
- fuse + fuse headers (apt-get install libfuse-dev)
- VirtualBox source OR subversion
If you don't have the virtualbox sources (see the VirtualBox Downloads page "Open Source Edition (OSE) Source code") and don't want the full sources then get them using subversion:
svn co http://www.virtualbox.org/svn/vbox/trunk/include/2. Download vdfuse and its builder.
3. Compile it.
sh vdbuild /path/to/vbox/headers vdfuse.c4. Run it!
- Code: Select all Expand viewCollapse view
$ ./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
$ ./vdfuse-v<version> -f image.vdi /mnt/vdi
$ mount -o loop /mnt/vdi/Partition1 /mnt/WindowsXP
Please note that whilst we use this program regularly, any use by you is at your own risk. If you don't trust this program, use the -r (readonly) flag.
This program presents a virtual disk as a Filesystem in User Space (FUSE). The separate partitions appear as block files Partition1, ... under the mount point. You can then mount any or all of the partitions as a Loop Device. If you use the readonly flag then these files are readonly and the partitions themselves can only be mounted readonly. If you want to understand more then follow the referenced links to the Wikipedia articles or read the source; you will see that the vdfuse application itself does very little other than glue the fuse handler to the VirtualBox Virtual Disk API.
Note that this is a restricted topic. If you want to discussion vdfuse then see the vdfuse discussion.

