On advice from a colleague at work, I decided to play around with Sun’s free application, Virtual Box, on my Mac at home:
This is a screenshot of my computer at home (Mac OS X 10.5) running a virtual copy of Ubuntu 8.04 through Virtual Box. The Ubuntu window is the “crane” one in the bottom-left.
Virtual Box is, as the name implies, something that lets you run other operating systems within your computer as a virtual machine. Lately, I’ve been wanting to play around with other OS’s such as FreeBSD, but don’t have a spare computer, and I don’t feel like re-partitioning the only computer I have and risk losing all the baby pictures and documents stored on there.* It’s pretty safe with BootCamp now, but I just don’t want to take chances.
So, I spent the whole weekend playing around with Virtual Box, and with a few Operating Systems:
- FreeBSD 7.0 – At first, I could not get past the installation, which ran into kernel panics at random points when extracting packages. I disabled the ACPI feature in Virtual Box, as someone suggested on Google, and enabled Vt-x feature instead. This greatly sped up the installation, but the panics still occurred. I was lucky enough to finally get it installed with a minimal install and the Vt-x feature, but even post-install, the virtual host crashes when I do a large disk write (I was trying to unpack the
portscollection). So for now, the host is very unstable until I can figure out what’s wrong. Small-scale installs with
pkg_addwork fine so far, but nothing big or very I/O intensive. Update: see below for getting FreeBSD to correctly install. I finally got it to work right.
- NetBSD 4.0 – NetBSD always has been one of my favorite OS’s because it’s unassuming, but installs all over the place and stays true to the old Berkeley 4.4 Lite (as do the other BSD’s). I haven’t really used NetBSD since 1.6.1, so I was very impressed with how much better the installation is in 4.0. I really would like to explore more if I could get the silly thing to work. 😦 However, the install hasn’t worked well so far in Virtual Box. The install fails during a large disk write (as with FreeBSD above) but complains of a “bad address” or other write errors. Using the same tricks as above, and also by forcing the disk partitions to use FFS_V2 instead of V1, I was able to do a real minimal installation (had to unpack the kernel three times in the process), so that’s a relief.
- OpenBSD 4.3 – In my experience I’ve always had the best luck using OpenBSD, and this was no exception. The install worked right off the bat with no write errors or any such problems. So, I now have a basic install of OpenBSD to play around with, virtually. The only catch is that OpenBSD chokes with a “signal 11”, or kernel panic, when I try to run X. I think the problem is that it doesn’t like the generic graphic card that Virtual Box pretends to offer. If I don’t use X, then OS seems to work fine. Well, that’s an improvement at least.
- Ubuntu 8.04 – Ubuntu Linux has always struck as one of the most seamless OS’s, and this proved to be no exception. Ubuntu installed perfectly, detected video fine and has been running Gnome just great. I haven’t used Ubuntu since 6.04 because my old Mac was a G4, and Ubuntu stopped supporting ppc architecture. I was impressed, once again, by how far Ubuntu’s come in two years. The folks there really deserve credit for making such a solid OS.
I still hope I can get something in the BSD family, not Linux running, because I really want to play around with those. I use Linux at work quite a bit, so I am familiar with it already, and wanted to branch out. Having a (more or less) running copy of FreeBSD and OpenBSD running does let me play at least a little, so that’s nice.
Not bad for a Mac Mini with only 1 GB of memory.
UPDATE: Since writing this post, I’ve had some much better success with installing/running FreeBSD. I tried this newly-released 2.0 version of VirtualBox and did an FTP install of FreeBSD (instead of CD), and that worked much better. FreeBSD seems to fall over under very cpu-intensive operations, so heavy installs in the port tree fail (but using
pkg_add works great). I think that’s also why the FTP install worked much better than the CD one. Everything, including X, installed fine and run great. Unfortunately this trick didn’t work with NetBSD, which still has a load of problems.
* – Using the Mac application, Transit, I do backup our baby photos on Amazon.com’s S3 service. S3 is amazingly cheap, but reliable storage (especially compared to .Mac), but we have lots of photos so it takes time to catch up.