This turned out to be easier than it would appear, although the vmware-tools needs to be extracted from the system.
The first thing that I did was to add the virtual hard drive created by VMware to the list of hard drives that VirtualBox makes available. This is in the Virtual Disk Manager from the main menu (Ctrl-D).
VirtualBox has native support for VMDK disks, the format that VMware uses. However, the documentation suggests there are restrictions, although the documentation may be obsolete: for one, it appears that snapshots are now possible, although the documentation suggests otherwise.
Having added the disk using the Virtual Disk Manager, I then created a new virtual environment and used the disk instead of creating a new disk from scratch. The disk was picked up and used seamlessly.
However, booting the environment (predictably) had problems: the VMware root disk was /dev/sd0a
, but the VirtualBox root disk was /dev/wd0a
. Thus, everything was fine until /etc/fstab
was read, then OpenBSD presented the option to utilize a shell to fix the problem.
At the shell, it was necessary to mount the root filesystem read-write:
# mount -o rw /dev/wd0a /
Then editing /etc/fstab to use the correct disk was all it took.
However, VMware does not use an OpenBSD package to install the software, and apparently just drops it into the environment – and not in /usr/local either. All of the BSDs fiercely recommend placing every addition to the system in /usr/local – every add-on package does, from BIND to PHP to Apache to KDE to OpenOffice – everything. So for VMware to litter across the filesystem in this manner is very bad taste – and even without a package to extract it from the filesystem properly.
However, using locate, we can find the vmware-tools (or what looks like all of them):
# locate vmw
/emul/freebsd/sbin/vmware-guestd
/etc/vmware-tools
/etc/vmware-tools/installer.sh
/etc/vmware-tools/not_configured
/etc/vmware-tools/poweroff-vm-default
/etc/vmware-tools/poweron-vm-default
/etc/vmware-tools/resume-vm-default
/etc/vmware-tools/suspend-vm-default
/var/log/vmware-tools-guestd
/var/run/vmware-guestd.pid
#
These files and directories can then be removed, although if the disk is to be used by VMware again you may not want to. However, using a virtual environment in two different products on a regular basis sounds like a recipe for disaster.