I recently bought a Mac Book Pro and repartitioned the drive to have three main partitions: one for Mountain Lion, one for Windows 7 and one for sharing data between the two. Through a lot of research, hair pulling and a little bit of magic, I was successfully able to get the computer to dual boot into either OS X or Windows and have each OS access the data partition.

The next step was to virtualize the Windows partion so that I could run it in VirtualBox while booted into OS X. Using the createrawvmdk option in VBoxManage I created a raw disk and specified the Windows and the data partitions. This led to a "VERR_RESOURCE_BUSY" error when starting the VM. After reading through the VirtualBox manual (http://www.virtualbox.org/manual/ch09.html#rawdisk) I found out that volumes must be unmounted on OS X before they can be used in the VM. If I unmount the volume from OS X I am able to start the VM and access the partition as desired, however this seems to undermine my intentions.

Are there any options to make this data partition available to both OS X and Windows at the same time? Ultimately, I would like Windows to see the data on data partition in the same manner (i.e. as the D: drive), regardless of whether I am booted into it natively or through VirtualBox.


Mounting something twice is, in general, a bad idea. The reason is that neither kernel informs the other what it is doing to the disk. The OS X kernel may assume that a certain section of the disk is untouched, when in fact the Windows kernel modifies it (or vice versa). This will corrupt your filesystem very quickly unless one of the mounts is read-only (and even that solution isn't foolproof).

Instead, I recommend you look at Shared Folders, which do basically the same thing, but with a little bit of networking magic. You'll need Guest Additions installed in Windows. Basically, the OS X folder you choose will be exposed to the VM as a network resource. What I would do with that is map it to a drive letter upon startup. If you play around with the options (I'm not terribly familiar with Windows) you might be able to get what you're talking about. Presto, you have basically the same thing, but without the fighting kernels!

| improve this answer | |
  • Thanks. I assumed that it had something to do with having two OSes trying to write to the disk at the same time. I was thinking about using the shared folders, but I haven't yet gotten a chance to delve into it. My concern with this route would be having the D: drive mapped through two different routes. When booted natively it would be the actual data partition, but when booted through the VM it would be the network folder. I'm not opposed to this route, but I would need some way to automatically mount the network drive only when booted through the VM. – Pak Jan 7 '13 at 5:11
  • Hmmm. I'm not entirely sure, as Windows isn't my primary OS. However. If you map (using the Windows partitioner) the drive to D:, then if you boot into the VM, it won't be exposed to the VM, so it won't be allocated. The network folder would be free to mount at that location. By the same logic, when the OS ran on the metal, the VirtualBox network interface wouldn't be available, so it wouldn't be able to mount the networked folder. Again, I have no idea if it works like this, but it's my two cents. – thirtythreeforty Jan 8 '13 at 4:46

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.