I consider M0n0wall (http://www.m0n0.ch) one of the best VMs i have. Since it's appliance based and FreeBSD, vmware-tools won't install on it, so it doesn't have support for VMXnet. It runs on a growable monolithic 100MB harddisk (minimum) using 6mb of it, and it has 48MB ram, running happily.
Since there's FreeBSD support in GSX, I started fiddling around until i got the VMXnet driver to work. Here's how it's done:
To add the VMXNet driver to the monowall image you need a virtual FreeBSD installation (i used 5.4, default user-install). Then follow these steps:
\- add the monowall harddisk image to the FreeBSD VM and start it
\- mount the cdrom (mount -t cd9660 /dev/acd0 /mnt/cdrom) and unpack the vmware-tools.tar.gz
\- copy the FreeBSD4.9 vmxnet.ko from the modules/lib32 directory to /tmp
\- mount the monowall harddisk (mount /dev/da0c /mnt/mono)
\- add the vmxnet.ko driver to the /boot directory of the mounted disk
\- edit the boot/loader.rc directory and add the following line below the loading of the mfsroot.gz but before 'start'!
'load vmxnet.ko'
\- umount /mnt/mono
\- shutdown the FreeBSD machine and boot the new harddisk image into a Monowall VM
\- don't forget to set the networkcards to VMXNET in the vmx file of the Monowall VM (ethernet0.virtualDev="vmxnet")
Additional changes to the root filesystem can be made as follows:
\- copy the mfsroot.gz to /tmp and gunzip it
\- make a filebase memorydisk (mdconfig -a -t vnode -f /tmp/mfsroot -u 0)
\- mount the memdisk (mount -t ufs /dev/md0 /mnt/mfs)
\- make you changes (i.e. default configfile, additional scripts / php files)
\- umount the memdisk (umount /mnt/mfs)
\- remove the memdisk (mdconfig -d -u 0)
\- gzip the mfsroot
\- copy the mfsroot.gz file back to the mounted monowall harddisk
i used this method to add the vmware-guestd to the mfsroot image and i now have heartbeat and timesync from my VM to the host
took me a while to figure out how to do this so hopefully this saves somebody the trouble i put in. goodluck.
Message was edited by:
brugh