--- On Mon, 7/25/11, Brandon Gooch <jamesbrandongo...@gmail.com> wrote:
From: Brandon Gooch <jamesbrandongo...@gmail.com> Subject: Re: mount vdi To: "Andrey V. Elsukov" <bu7c...@yandex.ru> Cc: "Joe Sciulli" <jsciulli2...@yahoo.com>, freebsd-emulation@freebsd.org, n...@jelal.kn-bremen.de Date: Monday, July 25, 2011, 4:31 PM 2011/7/25 Andrey V. Elsukov <bu7c...@yandex.ru>: > On 25.07.2011 10:18, Joe Sciulli wrote: >> 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 >> >> 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? > > I have not any Vbox images with fixed size, but i tried this: > # mdconfig -f 10G_GPT_UFS.vdi > # gnop create -v -o 41472 /dev/md0 > > where 41472 is offData value. After that md0.nop was tasted and reports about > invalid GPT. > So, i think if your image is fixed size disk yout can try this method and > mount UFS (not cd9660). > > -- > WBR, Andrey V. Elsukov There was a CFT sent out a while back about a fuse module for mounting vdi images: http://lists.freebsd.org/pipermail/freebsd-emulation/2010-September/007964.html Not sure about the state of this now though... -Brandon Thanks for your replies. I tried mdconfig -f freebsd_home.vdi gnop create -v -o 28672 /dev/md0 Indeed /dev/md0.nop etc were created. But mounting with the following commands still yielded the dreaded "Invalid argument" error: mount /dev/md0.nop /tmp/aaa/ mount -t ufs /dev/md0.nop /tmp/aaa/ One thing interesting is, in the gnop command, if I change 28672 to anything else such as 28671 or 28673 or whatever, that gnop command would fail with: gnop: Invalid offset for provider md0. so that suggests the offset is correct. It's just that how to mount it. The vdi is a variable size disk in virtualbox. But I had shutdown virtualbox and copied it to another file before mdconfig on it. I looked closer at virtualbox-ose-fuse.shar Brandon linked, it appears to be hardcoded to work with VirtualBox-3.2.8-OSE, while I only have VBoxGuestAdditions_4.0.12 as in the ports tree. Any more idea, thanks. _______________________________________________ freebsd-emulation@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-emulation To unsubscribe, send any mail to "freebsd-emulation-unsubscr...@freebsd.org"