As some of our production software will stay on Windows we working on a dual production environment(using VirtualBox 5.2.12), based on a Linux(Ubuntu 18.04 LTS) host with a Windows 7 guest.
One of my problems is sharing of data between the 2 environments and this is what I would ask help with.
Requirements
- Laptops
The system must work on laptops that change network settings(like wired or wireless). - Dual access
Both production systems must have access to the same files. But not the same file at the same time. - Must work offline
The solution must work without have access to a network. (Internal is okay, but not preferable). - No NAT
The solution should work without using the Network NAT feature in VirtualBox. - Security
The solution should not "break" normal security measures, like disabling UAC in windows or give the VirtualBox user root powers.
- VirtualBox Shared Folders
Using the built-in shared folder features is really nice and easy to setup. The problems that I have encountered is that you will need to have special attention on the VirtualBox network adapter setup. If you use "Bridged Adapter" and you un-dock the laptop you will need to reselect the network adapter.
Also, a big problem is that Windows 7's "User Account Control" default level does not allow execution of programs over network drives and (even worse) some older programs are unable to browse these network shares. Also, turning the UAC off is not recommended Windows practice. - Sharing local (host) partition with raw access
Sharing a local (FAT or NTFS) partition, is another way. Creating a .vmdk partition requires a bit more work.
But it seems that this have other problems, one being that VirtualBox either have to be executed as root or the user will have to be added to the "disk" group(which I suspect can cause other security related issues). Also I am not sure if mounting the same partition on the Host as well as on the Guest, would cause issues with concurrent reads/writes.
Does anyone have success/experience with this?
In relation to the concurrent read/write, would this be solved by setting the type of the .vmdk partition as "Shareable"? - Shared disk image
Another solution, could be to create a disk(.vdi) image and mark it as "Shareable" in Virtualbox. Then mount this on the host using the network block driver. I have not been able to get this to work on Ubuntu 18.04 yet. Do anyone have any experience with this?