Fedora 7 on Microsoft Virtual PC 2007
For over a year, I ran Ubuntu Linux as a guest operating system under VMware’s free server for Windows. While my home desktop machine runs XP Home, I prefer to have Linux around for a few local servers and other specific items that I keep up (like irssi inside a screen, for example). So, I got to have my Linux cake and eat VMware, too.
VMware Server is nice (especially for free!), but it was overkill for what I was doing with it. It had a lot more bells and whistles than I needed, such as snapshot/rollback capabilities for VMs, etc. Also, I constantly battled clock issues within the Ubuntu VM. There have been updates to later Linux kernels to address clock problems under virtualization, but Ubuntu is not a distribution that quickly jumps to the latest and greatest kernel. Side note: good writeup about clock problems in virtualized Linux here. Eventually, I decided to start with a clean slate and try something new.
Microsoft recently released Virtual PC 2007 and while it does not explicitly list Linux as one of the possible guest operating systems that it supports, it does say that it “can run most x86 operating systems”. Being a Fedora fan, I decided to give Fedora 7 a shot within Virtual PC.
Virtual PC 2007 is a free download and painless install. It has a very rudimentary interface compared to VMware Server, but I just wanted bare bones stuff, anyway. Since I am on XP Home, I was warned during the install that my operating system was not supported. However, I had read in several places that Virtual PC works just fine on XP Home and other Windows flavors that it doesn’t say are supported. You just won’t get any technical support from Microsoft on those.
After installing Fedora 7 and setting it up to my liking, I’ve been running for a few weeks with not too many problems. Here are some tips:
- When you install Linux as a guest, be sure to choose that the system clock is not stored in UTC. Linux normally writes the BIOS clock in UTC, but Windows stores it in local time. I guess Virtual PC sets the virtual clock from the system clock (in local time!) at each VM start because my Fedora clock would be off by the number of hours of my GMT offset. If you botch this at install, you can edit /etc/sysconfig/clock on Fedora and set UTC=false.
- You’ll find plenty of blogs about display problems at boot time with Linux under Virtual PC. I chose not to install X with Fedora 7 because I wanted only some basic Linux server action and I am comfortable working in a shell. Still, even the video in the main console that Virtual PC fires up at boot will get hosed. But, I use PuTTY to ssh in and all is well that way. I just let that first console come up and then minimize it out of the way. Some folks have made attempts at getting X to run under Virtual PC. I took a half-hearted try in a second Fedora 7 VM to no avail.
- Related to the above… during that first boot of Fedora, the “Setup Agent” comes up to ask you about setting up networking, etc, but you won’t be able to read it. Hit tab twice and then hit enter to dismiss the setup because I know you are old school and will tinker with all that from a shell, anyhow. Actually, you can disable the firstboot service and prevent that agent from coming up again.
- In Virtual PC, make sure to select File -> Options -> Performance, then set the radio buttons for “All running virtual machines get equal CPU time” under “CPU Time” and “Run Virtual PC at maximum speed” for “When Virtual PC is running in the background”. Otherwise, clock hilarity will ensue in your Linux VM. Installing ntp in your VM is also a good idea.
- At 256MB of memory for the VM, I would see some hangups and issues after it ran for a few days. I don’t know if this was Windows, Fedora, Virtual PC or some combination. I bumped it up to 384 and have since run yum and gotten a new Fedora kernel. Haven’t seen the same problems again.
- Virtual PC does not run as a service, so you have to either start it manually or put it in your startup folder to kick off your VMs at Windows boot time.
- I like that the virtual disk is one big file and there is only one other config file for Virtual PC for each VM. It seemed like VMware Server kept a lot of other files around, so this setup is easier to backup and move around.





