Running Linux Fedora Core 2 on VMWare 4.0.0

At TCG, many of our servers are running Fedora Core 2.  As an emergency restore technique, I wanted to be able to quickly recreate a server on a VMWare virtual machine running FC2.  In addition, virtual machines are a great way of quickly creating (and destroying) development and integration test environments.

As it turns out, however, we are running VMWare version 4.0.0, and trying to install from a FC2 CD yields a kernel panic.  But, it can be done!

Back in 2004, KernelTrap.org posted an article entitled “Running Fedora Core 2 Test 3 on VMWare 4.5.1”.  The same techniques allow FC2 to run on 4.0.0.  I still have to experiment to see if it allows newer FC versions to work as well.

Here’s the trick: at boot time, boot with the command “linux vdso=0”.  This turns off the Virtual Dynamic Shared Object support (a feature new to FC2), which apparently does not work with older versions of VMWare.  Once you successfully install the system, in your /etc/grub.conf, add “vdso=0” to the end of your kernel command, so that future reboots will succeed.

However, when I couldn’t initially install Fedora Core 2 on my VMWare box, I actually created a virtual machine with a minimal installation of Fedora Core 1.  At http://www.brandonhutchinson.com/Upgrading_Red_Hat_Linux_with_yum.html is a wonderful article on how to upgrade FC versions using yum.  So instead of installing FC2 from the CDs, I copied my FC1 virtual machine, upgraded it with yum, and updated /etc/grub.conf with the “vdso=0” line.  By upgrading, I retained a copy of the old Linux 2.4 kernel, so if I need to, I can switch between the 2.4 and 2.6 kernel at will for experimentation.

So now, whenever I need to recreate (or trash) a FC1 or FC2 installation, I can copy my virtual machine, run VMWare, and go to town.

I should note that User Mode Linux (for Linux machines) and coLinux (for Windows) also appear to be very good (and free) environments to run virtual Linux machines.  In fact, Bill Stearns’ web site has pristine root file systems for User Mode Linux for FC2 through 4 and Red Hat 9.  But since we already have a perfectly good VMWare 4.0.0 license, I wanted to see if I could get FC2 to work, and it does!