mount vdi

Joe Sciulli jsciulli2003 at yahoo.com
Mon Jul 25 06:18:40 UTC 2011


Is it possible to mount virtualbox vdi file on the FreeBSD host?  This appears to be doable on windows and linux hosts, which basically is done in two steps: 1. find offset in the image. 2. mount the image with that offset.

I'm trying to do the same thing on FreeBSD, and found the undocumented and deprecated command still works:

VBoxManage internalcommands dumphdinfo freebsd_home.vdi

I got the following for the virtual disk image holding the /home (no root hence no MBR) disk for a FreeBSD guest:

Header: offBlocks=4096 offData=28672

But since the mount command in FreeBSD doesn't support "offset", I have to dd the image into another file.  I believe the default "block" size in dd is 512 bytes, so the offset 28672 (bytes?) is 56 blocks.  So I used the command:

dd skip=56 if=freebsd_home.vdi of=freebsd_home_56.vdi

Then attempt to mount it:

mdconfig -a -t vnode -f /tmp/freebsd_home_56.vdi -u 0
mount /dev/md0 /tmp/aaa/
mount -t cd9660 /dev/md0 /tmp/aaa/

unfortunately both the above two mount commands failed with "Invalid argument".  I tried skip=28672 to no avail as well.  Anything did I do wrong?

Or is there any other solution in FreeBSD host to mount virtualbox vdi file?  There appears to be a "vdfuse" but is not ported yet, and the attempt to port appears to be not for VirtualBox 4.




More information about the freebsd-emulation mailing list