Monday, March 17, 2008

Creating a Virtual Machine for Fedora 8

This tutorial may seem a bit rudimentary, but I don't want to overlook Virtual PC novices. This is a detailed walkthrough of how to create a new virtual machine ready for an installation of Fedora 8 Linux (though it can just as easily be applied to nearly any operating system). Before you start, there are two assumptions:
  1. You have downloaded and installed Microsoft Virtual PC 2007. Microsoft offers Virtual PC 2007 as a free download, available at http://www.microsoft.com/virtualpc/. You will need to install the appropriate version for your operating system. My main machine runs Windows Vista Ultimate x64, so I had to download and install the 64-bit version of Virtual PC. If you don't know whether you run a 32- or 64-bit version of Windows, you might not have the technical acumen to install Linux. The good news is that as long as you are installing on a virtual machine, your actual machine can't really be compromised.
  2. You have successfully downloaded installation media for Fedora 8. To download, visit http://fedoraproject.org/en/get-fedora and click the link for "i386 - Install DVD" under "Direct Download". It's important that you download the i386 version regardless of your host machine operating system. At this point, Virtual PC only supports 32-bit client operating systems - even on a 64-bit system. Once the download completes, you should double check the MD5 checksum of the ISO file to make sure it was successful. If you are using another operating system, just make sure you either have the physical installation media or an ISO of the installation media ready to go.
Now we can create a new virtual machine:
Step 1
Open Virtual PC and click "New..." to open the New Virtual Machine Wizard New Machine 01
fedora_8_new_machine_01.gif
Step 2
Click the "Next" button. New Machine 02
fedora_8_new_machine_02.gif
Step 3
Select the "Create a virtual machine" option and click the "Next" button. New Machine 03
fedora_8_new_machine_03.gif
Step 4
Enter the name of your virtual machine (I called mine "Foo.Bar Fedora Client", since it's going to be a client on my "foobar.local" domain) and click the "Next" button. New Machine 04
fedora_8_new_machine_04.gif
Step 5
Select "Other" as your operating system and click the "Next" button. New Machine 05
fedora_8_new_machine_05.gif
Step 6
Select the "Adjusting the RAM" option, enter 512 MB (you can run it with 256 if you're hurting for memory) and click the "Next" button. New Machine 06
fedora_8_new_machine_06.gif
Step 7
Select the "A new virtual disk" option and click the "Next" button. New Machine 07
fedora_8_new_machine_07.gif
Step 8
Enter 20480 MB for your disk size (depending on how much you install, Fedora can take from 90 MB for a minimal install up to 9 GB for all packages) and click the "Next" button. New Machine 08
fedora_8_new_machine_08.gif
Step 9
Click the "Finish" button to exit the New Virtual Machine Wizard. New Machine 09
fedora_8_new_machine_09.gif
Step 10
Select your new virtual machine then click the "Settings" button. New Machine 10
fedora_8_new_machine_10.gif
Step 11
Select "Networking" on the left and choose "Local only" next to "Adapter 1:" on the right. If your machine supports hardware-assisted virtualization, you may want to disable this under "Hardware Virtualization" on the left. I have experienced boot issues with Linux machines when hardware-assisted virtualization is enabled. However, my main PC does not support this, so I don't really know if there is an issue with Fedora 8. Click the "OK" button to close the settings window. New Machine 11
fedora_8_new_machine_11.gif
At this point, we're ready to start up the new machine. This part is pretty easy, but if you struggle, here are the instructions:
Step 1
Select your new virtual machine then click the "Start" button. New Machine 12
fedora_8_new_machine_12.gif
Step 2
Choose "Capture ISO Image" from the "CD" menu. If you are booting from actual media, select "Use Physical Drive D" (where "D" is your CD or DVD drive) and skip the next step. New Machine 13
fedora_8_new_machine_13.gif
Step 3
Browse to the Fedora 8 ISO image and click "Open". New Machine 14
fedora_8_new_machine_14.gif
Step 11
Wait for the virtual machine to boot. If you were too slow mounting the ISO image (or physical drive), you can reset the machine by choosing "Reset" from the "Action" menu. New Machine 12
fedora_8_new_machine_12.gif
That's it. Now you're ready to install.

Friday, March 14, 2008

Installing openSUSE 10.3 in Virtual PC 2007 - Part 4 of 4

Step 26 - Online Update
The installer wants to do an online update at this point. Let it go ahead and do it. You may as well at least start off with everything as up to date as possible. Install 23
openSUSE_10.3_install_23.gif
Step 27 - Accept Updates
The first thing that updates is the update system. Accept this important update (nobody wants to go into an endless loop). Install 24
openSUSE_10.3_install_24.gif
Step 28 - Wait
Wait just a bit again for the YaST update to complete. Once it does, click "Next" to move on. Install 25
openSUSE_10.3_install_25.gif
Step 29 - Accept More Updates
I'll bet you thought you were done getting updates. Well, not quite. This time around, there are a bunch. There's a good chance you don't really need all of these updates, but I'm going to stick by my "practice patience" mentality. There is a kernel update and a couple of additional acceptance screens with this update. Just accept everything. It will be ok, I promise. Install 26
openSUSE_10.3_install_26.gif
Step 30 - Wait
I'll admit, this wait stinks. Your best bet is to pull open Minesweeper and knock out a few games while the updates install. My connection dropped probably about 20 or 30 times while it was installing. Every time a package fails to download, you will be prompted to retry or abort. Every time I had one fail, I chose "Retry" and the package immediately began to download. The one thing worse than waiting forever for something to install is waiting forever and having to babysit for stupid prompts. Once it's done, click "Next" to actually move on. Install 27
openSUSE_10.3_install_27.gif
Step 31 - Reboot
Due to the kernel update (and maybe one of the others), the system will reboot. Try to boot from the newest kernel update (the first on the list). If your reboot fails, openSUSE inserts a "Failsafe" boot option into the bootloader list you can try. The reboot went very smoothly for me.
Step 32 - Choose Authentication Method
If you're a real guru, you may be able to configure one of the network authentication methods. Windows domain authentication is very cool conceptually, but I had no success trying to get it to work at this point. I recommend sticking with the "Local (/etc/passwd)" option at this point. You can change it later - and I'll post an Active Directory authentication tutorial in the future. Install 28
openSUSE_10.3_install_28.gif
Step 33 - Configure Local User
I'm a Windows admin (among many other things) by profession, so I like to draw on my Windows knowledge frequently. On any Linux VM, I create an account for "administrator" and use the Windows local machine "Administrator" account's password. This means that all machines in my FOOBAR domain can be logged on using the same username/password combination. You don't have to do this, but I think it helps keep it simple. Install 29
openSUSE_10.3_install_29.gif
Step 34 - Release Notes
I always read release notes in detail. Wait, did I say read? I meant ignore. Install 30
openSUSE_10.3_install_30.gif
Step 35 - Hardware Configuration
Wait a couple of seconds for the hardware to be probed. All of the video settings are fine. I like to run my VM sessions in 1024x768 resolution (it fits nicely on my secondary 1280x1024 display). Just click on "800x600" and change it to whatever resolution you'd like. I did try to change the monitor settings to more accurately reflect the virtual hardware, but it ended up hosing up X-Windows. So just leave it be. Install 31
openSUSE_10.3_install_31.gif
Step 36 - Finish
Finally, the install is finished. Take this time to double check and make sure your wife hasn't left you due to neglect during the install process. Everything ok? Click "Finish" to exit the installer and boot openSUSE for the first time. Install 32
openSUSE_10.3_install_32.gif
Step 35 - Login to GNOME
Use that local user account ("administrator") you created a couple of steps ago to log in to a GNOME session. Install 33
openSUSE_10.3_install_33.gif
Step 36 - Use openSUSE
Congratulations! You can now use openSUSE as you'd like. If you're a Linux newbie, notice how easy it is to use. An average computer user can easily adapt to use the X Window System (X or X-Windows), and it can be easily deployed on a minimal budget. Install 34
openSUSE_10.3_install_34.gif
Installation Summary
Now that the install is complete, there are a couple of quirks I've found, some of which were mentioned earlier in the tutorial:
  1. The clock has a tendancy to run slowly. This is some kind of bug that is common to multiple Linux distributions on Virtual PC. It has been suggested to add "clock=pit" or "clocksource=pit" to the boot options to overcome this issue, but, in my experience, that doesn't help at all. Generally, a slow clock will not affect the utility of the system. However, if you are interested in using Active Directory (or kerberos) authentication, it will cause a problem. I don't have a good fix formulated for this as of yet.
  2. The sound card doesn't work. Again, this is common to multiple distros. I haven't even tried to fix this because I generally don't care about sound on a VM.
  3. The mouse's scroll wheel doesn't work. This one can be fixed easily, if you have enough know-how to manually edit a configuration file. In "/boot/grub/menu.lst", find the line that starts with "kernel /vmlinuz-..." and has "i8042.noloop" in it. After "i8042.noloop", enter "psmouse.proto=imps" (with a space between the entries). Next time you boot up, you'll be able to use the scroll wheel with no problems.
  4. The "Join Windows Domain" features that are included in the YaST administration console have not worked at all for me. I was able to overcome this problem, but through many manual changes. If you are interested in full Active Directory integration - including using Windows AD accounts to log into openSUSE, stay tuned. I'll be posting that tutorial in the future. It works, and it is way cool.

If you have any questions or comments, please fire away. I'll do my best to respond, and keep your eyes peeled for more obscure entries.

Installing openSUSE 10.3 in Virtual PC 2007 - Part 3 of 4

Step 16 - Still Waiting
Picking up where we left off, after three hours of waiting, a screen that says "Finishing Basic Installation" is a good sign we're winding down. Typically the system will reboot once this screen is finished. Install 13
openSUSE_10.3_install_13.gif
Step 17 - Boot from Hard Disk
Assuming you have not ejected (or released) the install DVD, the VM will boot again from the CD. This time around, choose "Boot from Hard Disk". Install 14
openSUSE_10.3_install_14.gif
Step 18 - More Waiting
For some reason, my first reboot was heavily delayed due to the system checking the disk drives. I've heard of and even seen various Linux installs take issue with Virtual PC's dynamically resizing virtual hard disks. This was a one time delay, so I figure it best to practice a bit more patience. Install 15
openSUSE_10.3_install_15.gif
Step 19 - Set Root Password
If you're a Linux/Unix newbie, "root" is the superuser account that is used to perform certain administrative tasks but should NEVER be used as your regular login account (sort of like "Administrator" in Windows). If you're a Linux/Unix snob, don't bust my chops for making the comparison. The root password should generally be something pretty tough to crack. Personally, I keep my virtual machines on a virtual network that is firewalled from my normal network and don't particularly care about password complexity. Typically I use my "FOOBAR\Administrator" (Domain Administrator) account password as my "root" password. One less thing to have to keep track of. Install 16
openSUSE_10.3_install_16.gif
Step 20 - Configure Hostname
Your hostname is how the machine identifies itself and (maybe) the way it will be identified on the network. I named mine "fb-suse" and gave it my "foobar.local" domain suffix. At this point, this machine is not a part of my Windows Active Directory and is not entered in my DNS, so the hostname will not resolve. Active Directory integration is a whole other tutorial... coming soon. Install 17
openSUSE_10.3_install_17.gif
Step 21 - Configure Network
There's generally no need to change any settings at this point. Just accept things as they are and move along. Install 18
openSUSE_10.3_install_18.gif
Step 22 - Check for Internet
It wants to check for internet connectivity. Let it go ahead, this will help when it comes time for updates. Install 19
openSUSE_10.3_install_19.gif
Step 23 - Wait
Oh yeah, did I mention you were going to have to wait? It downloads some XML stuff while "checking for connectivity" that could take a couple of minutes. Hopefully, you'll get the "Success" message. If not, you may have to skip the update steps that follow. Install 20
openSUSE_10.3_install_20.gif
Step 24 - Registration
Novell tries to collect information from you here. I chose to provide no voluntary information. I don't know if there's any reason to give them more info. Maybe if you're lonely and take comfort in the quantity of spam you receive. Install 21
openSUSE_10.3_install_21.gif
Step 25 - Registration Success
Congratulations, you are registered. Whatever that means. Just 13 more steps and a little bit more waiting ahead in part 4. Install 22
openSUSE_10.3_install_22.gif

Thursday, March 13, 2008

Installing openSUSE 10.3 in Virtual PC 2007 - Part 2 of 4

Step 3 - Start the Installation
Select "Installation" from the boot menu. On the line at the bottom, enter "i8042.noloop". This parameter will fix a bug that does not allow you to use the mouse. The "vesa" in the image is used to fix video driver problems commonly found in Linux distributions but is not actually needed in openSUSE. Install 01
openSUSE_10.3_install_01.gif
Step 4 - Wait a Bit
Get used to waiting. You'll be doing it frequently. Install 02
openSUSE_10.3_install_02.gif
Step 5 - Pick a Language
¿Hablas espaƱol? Install 03
openSUSE_10.3_install_03.gif
Step 6 - Media Check
If you feel like dragging this out, you can go ahead and verify your media. The nice thing about Virtual PC is that if the media is bad and the install hoses up the hard drive, you can just delete it and try again. If you think I'm an idiot and are still trying to install from a mounted ISO image, I dare you to run a media check on it. What's that? It failed? I may be an idiot, but I'm not a liar. Install 04
openSUSE_10.3_install_04.gif
Step 7 - Accept License Agreement
You read the whole thing, right? Install 05
openSUSE_10.3_install_05.gif
Step 8 - Start New Installation
Wait a bit while the installer performs a system analysis. Once complete, select "New Installation" and move forward. Install 06
openSUSE_10.3_install_06.gif
Step 9 - Build Repository
Wait a while for the repository to build. If you're still confident that I'm an idiot and skipped the media check on your mounted ISO image, you should find that the repository does not properly build. If you got this to work, let me know just how you did that.
Step 10 - Select Time Zone
Pick your appropriate time zone. The hardware clock is set to local time, not UTC. Like other Linux distros, openSUSE seems to have clock problems inside Virtual PC. We'll talk more about that after the install completes. Install 07
openSUSE_10.3_install_07.gif
Step 11 - Select Desktop
It's really up to you whether you want to use GNOME or KDE as your desktop engine (or some other one, for that matter). I recommend GNOME because (1) it's pretty and (2) it will make your screen look a lot like my screenshots. Install 08
openSUSE_10.3_install_08.gif
Step 12 - Select Software Installation
You can go with the defaults for software installation if you'd like. openSUSE's administrative tools make it easy to add or remove components after the install, if you even need to. Install 09
openSUSE_10.3_install_09.gif
Step 13 - Accept License Agreements
As always, make sure you read every last letter of each software license agreement. If you went with GNOME and the default installation, you should have to agree to licenses for "AdobeCCProfiles", "agfa-fonts", "flash-player", "java-1_5_0-sun" and "java-1_5_0-sun-plugin". Install 10
openSUSE_10.3_install_10.gif
Step 14 - Confirm Installation
Are you sure you want to install? If you don't, you've already wasted a bunch of time. Install 11
openSUSE_10.3_install_11.gif
Step 15 - Wait
This is not an exaggeration: prepare to wait three full hours for the installation to complete. Go get lunch. Then eat it. Then play Spider Solitaire for an hour. Then check your e-mail. Still not finished? Start writing a tutorial on how to do this install... Install 12
openSUSE_10.3_install_12.gif

Installing openSUSE 10.3 in Virtual PC 2007 - Part 1 of 4

This is a long and drawn-out step-by-step tutorial for installing openSUSE Linux 10.3 on a Microsoft Virtual PC 2007 machine. Before you get started, you'll want to make sure of the following:
  1. You have installed Microsoft Virtual PC 2007. It's available for free at http://www.microsoft.com/virtualpc. For the purposes of this tutorial, I am running Virtual PC version 6.0.156.0 (x64) on Windows Vista Ultimate (x64). My machine has an Intel Core 2 Duo 6600 processor and 3 GB of RAM.
  2. You have downloaded the openSUSE 10.3 installation DVD from http://software.opensuse.org/. Make sure to download the 32-bit version as Virtual PC 2007 only supports 32-bit client operating systems (even on a 64-bit host). Once downloaded, verify the MD5 checksum to make sure the download was good.
  3. You have burned the openSUSE installation DVD to an actual DVD. For some reason, mounting the ISO file in Virtual PC leads to a media error.
  4. You have an entire afternoon free. If it wasn't bad enough that you had to download a 4.1 GB ISO image, this install is going to take a good 5 hours or more partially due to the above ISO mounting bug.

Now that we're through the prerequisites, just another 38 short and easy steps to completion.
Step 1 - Create Virtual Machine
Using the "New Virtual Machine Wizard", create a new virtual machine. Select "Other" as your operating system. I recommend alotting 512 MB of RAM to the machine. If you are tight on resources, you can probably just as easily get away with 256 MB. Your virtual hard disk should be at least 10 GB. The default OS install is takes up about 4-5 GB. I went with 20 GB just to be safe.

Once you've completed the wizard, you may want to configure some of the settings. I run experimental VMs on a localized network, so under "Networking", I selected "Local Only" for the ethernet adapter. My machine doesn't support hardware-assisted virtualization, but in the past, I've had major issues with Linux machines and hardware-assisted virtualization. You may need to uncheck this box if your VM doesn't properly boot.
Step 2 - Boot the Machine
Put your burned openSUSE 10.3 installation DVD in your DVD drive. Start your VM and quickly select "Use Physical Drive D:" from the "CD" menu. Give it a bit to boot up. Once you see the openSUSE boot screen, push the down arrow to kill the timeout. Take a deep breathe. The easy part is over. If you had trouble up to this point, you may not want to continue. Otherwise, on to part 2.