In The Beginning
Europa is my workhorse home system. It's a DIY system I built in January 2003 from components ordered from Newegg. Every component, with the notable exception of one hard disk, continues to function on the machine (and I attribute that to the fact that nothing has ever been overclocked). The motherboard is a Chaintech 7NJS Zenith (Socket A, nVidia nForce 2 400 ATX). It should be noted that Chaintech is now Walton Chaintech and they don't make motherboards any more. When it was released the 7NJS was considered a high-end motherboard, and it came stocked with just about every feature you'd ever want or need on a Socket A system board. One item I paid dearly for at the time was an ATI 9700 Pro. I wanted a high-end graphics card, and the ATI seemed to be sweeping up the floor with nVidia in contrast to nVidia's motherboard chips. Strange, that.
The first OS I installed on europa was Windows XP, followed immediately by service pack 2 (which gives some idea how old XP and SP2 really are). I'd installed a pair of Western Digitial 120GB PATA drives on europa. Windows was installed on the primary drive. The secondary drive got SuSE Linux 8.2 Professional, purchased for $79.99 from Best Buy here in Orlando. I started using Suse as my primary Linux distribution starting with Professional 7.3. I might "stray" to other distributions (most notably Redhat up to version 9, before they dropped their desktop subscription service), but I always came back to Suse. In fact rhea's primary goal in life was (and still is) the sandbox for all those other distributions. Europa stayed a dual-boot Windows XP/Suse machine from its inception for over four years.
Seeds of Discontent
I didn't realize it at the time, but my disenchantment with Suse took root with Novell's purchase of SuSE back in November 2003, the same year I built europa. It wasn't a hit-over-the-head moment; I continued to purchase and use Suse up until openSUSE 10.2, which I had to order over the web from Novell itself because no one was selling it here in Orlando (no big-box stores sell any Linux distribution on their shelves any more in Orlando the way they did back in 2003). The greatest transition took place between 9.1 and 10.0. The term 'Professional' was dropped from the name, and for all intents and purposes, from the distribution in general.
The single most annoying change that took place from 9.3 to the 10 series in general is the updater. I don't know what happened, nor do I care for the arcane details, but the change was for the worse and updating the system became, in a word, horrible. How horrible? Horrible enough that any problems with any of the repositories, especially with
third party repositories such as with packman.unixheads.com would cause the updater to hang for very, very long periods of time before a timeout would occur, and it would do this for each and every problem. I'm sure there's some tunable timeout constant buried somewhere in some file, but I don't have the time nor the patience to go hunt it down and slay it. But in spite of such update woes, I kept with it. I actually liked the KDE apps that shipped with 10.2, in spite of Novell's desire to standardize on Gnome. I wrote a lot of good reviews of KDE under Suse 10.2, and stand by those reviews. And I probably would still be there if I hadn't decided to upgrade openSuse 10.2 to support Beryl to the same level it is currently supported in Ubuntu 7.04.
Looking for Love in All the Wrong Places
I went googling for trouble, and I found it in spades. I found a page that led me merrily down a path to despair under the guise of helping me upgrade my Suse 10.2 installation to use Beryl. With KDE. And the ATI 9700 Pro. After faithfully following the directions I found it didn't work. As I read down the instructions to the end, what do I find but these thoughtful words:
"Go fly a kite." I've got all this code installed, including the latest ATI video driver, and Beryl as well as Compiz won't work as described. And all I get for my troubles are those four motivational words "Go fly a kite." Yeah.
Revenge is a Dish Best Served Barbecued
Now suitably motivated, I reach over and grab the Ubuntu 7.04 final release CD, and stuff it in europa's drive. Then I reboot, and begin the task of replacing Suse 10.2. I figure what have I got to loose? It's either install Ubuntu or re-install Suse, and hell is going to freeze over before I re-install Suse. Oh. A few things that will add spice to this particular stew.
- My /home area is on a separate partition. I'm going to take my login area and re-use it under Ubuntu.
- I have installed a 250GB PATA drive controlled by a Promise PDC20375 SATA controller with RAID support. The Chaintech motherboard has the PDC20375 configured with one drive true SATA and the other PATA. So I purchased another Western Digital 250GB hard drive on sale at my local Circuit City for a mere $65 and plugged 'er in. I was going to ignore the RAID features and use it as a regular drive. Such a deal!
- And I've still got that lovely ATI 9700 Pro.
Where Even Fools Fear to Tread
The folly of my first Ubuntu install was quickly revealed to me during first reboot. That wonderfully new and big drive, that was so easily formated and partitioned and had Ubuntu installed, was not visible during a reboot. Because I chose unwisely to fill the PATA slot on the SATA controller, the Chaintech BIOS, on reboot, did not see the SATA controller as being properly configured. So it did not load the driver to see the third hard drive. Thus, when grub went looking for Ubuntu, it wasn't there. And it just hung there with an error message.
So I grabbed the manual out of the OpenSuse 10.2 box along with the installation DVD and went into system rescue mode. Now, I'll give Novell credit for at least giving you a tool to clean up a mess such as this. But very little. The rescue system dumps you to a command line, and you get to sit at the keyboard with the manual in your lap opened to page 193, slowly reading and following the directions. At page 197 ("Modifying and Reinstalling the Boot Loader") things got more interesting, as it showed what commands to use to mount the root partitions (via a reference to page 196, "Accessing the Installed System"), and to then run 'grub --batch < /etc/grub.conf'. Such a nice and simple command. I guess it would be petty to suggest that something a little more GUI-ish and a little less CLI-ish would be useful. After all, I was able to follow directions here and get my system to properly dual boot once more.
A Day in the Life
You'd think at this point I would learn. And you'd be wrong. Rather than heed this divine warning and be grateful with the salvation of my system, I decided that only wiping out Suse would satisfy my animal rage. I was royally pissed and by damn I was going to succeed in installing Ubuntu, come hell or high water. So I shoved the Ubuntu disk back in and re-installed it, except this time over the Suse root partition I knew would be seen on reboot. And here's what I got to see yet again the second time, and captured for posterities sake.
If you'll note the fine text right in the middle of the big dialog, it says in part "This is a pre-release of the Ubuntu live DC installer." Pre-release? Excuse me, but I did download the final release, did I not? I went to another system in a state of panic and checked to make sure that the ISO I'd grabbed was the final version. This was the same CD I'd booted successfully on my notebook. Oh well. Another one that slipped through QA. I had booted Kubuntu earlier on this same machine, and checked the installer there, and it was correct in noting this was the final installer. Whatever.
I followed the directions and in no time I had Ubuntu installed a second time on the second drive (/dev/hdb1 to be precise). I mounted /home, and then logged in as myself. And that's when I discovered that a home created under Suse does not automagically migrate into a home under Ubuntu.
Install in Haste, Repent in Leisure
So there I am, finally up and running in Ubuntu, and the little update light goes on on the panel. Except it's not on the upper panel, it's on the lower panel. That's because when I was running Gnome under Suse there was only a lower panel. So I click on the update notification on the lower panel and I'm treated to 644 updated packages that need to be installed. Now.
By this time I didn't care. Fine. Download and install the updates. It does and when it's finished and rebooted (again) I finally sit down and attempt to do what I tried under Suse. Bring Beryl up with the lovely ATI card. So I find and install the ATI vendor drivers and the restricted kernel modules. After multiple reboots and tests, I finally perform the following tasks to get the hardware acceleration operational on the ATI card:
- In /etc/default/linux-restricted-modules-common I comment out the line "DISABLED_MODULES="fglrx"". Failure to do this causes the fglrx.ko module to be deleted from /lib/modules/2.6.20-15-generic/volatile each and every time the system reboots. How do I know it needs to be there? Because when I try to do a modprobe with the module, it won't load from any other location.
- In /etc/X11/xorg.conf's "Extensions" section, I disable the "Composite" option. That pretty much kills the ability to run Compiz and Beryl. But it's the only way to get full hardware acceleration with that damn ATI card and those damn ATI drivers.
It's Getting Better All The Time
So now I turn my attention to the new big drive. I start copying about 40GB of data off of my /home partition onto the new drive mounted at /work. As I'm sitting there in grim satisfaction waiting for the task to finish, the system locks up. Hard. Requiring the reset from the front of the case. So later in the week, on the way home, I go buy another Western Digital 250GB SATA drive and replace the PATA with it. And that opens up a new can of worms.
Adding and replacing drives under Ubuntu can be best described as rudimentary. There is nothing under the on-line "Help and Support" that I could find. I had to go googling for it before I finally found the answer(s).
- Install gparted. Gparted is decent. It allows you to see all the devices, including my new unformatted and unmounted drive. Gparted allowed me to set the volume label, and to then partition and format the drive. Unfortunately it stopped at the last critical step, setting up automatic mounting under Ubuntu.
- Ubuntu is now using a UUID to identify drives in /etc/fstab. Otherwise I'd have just used the device the kernel assigns to mount it. Rather than risk this now-old-fashioned way of doing it, I attempted to figure out the New Way. The New Way is to run (as root) 'vol_id -u /dev/sda1' (since the new drive is /dev/sda). This gave me the UUID for the partition. I then cut-and-pasted that into an entry in fstab. When finished the drive would automatically mount on every reboot.
- Again I suppose it's petty of me to think that gparted could handle the insertion of the drive it finds and formats for you into /etc/fstab.
The Long and Winding Road
So what have I learned from all this?
- Changing or upgrading hardware (drives, video cards) is a royal pain in the ass under Linux. Under Windows it's fairly simple, but under Linux it's an adventure only a hard-core geek can appreciate. I can say this because I've experienced upgrading the video card on rhea from an ATI 9600 SE to an nVidia 7600 GS, and adding the new drive on europa. Oh. Make sure to remove the drive you want to physically remove from fstab. I removed the drive without modifying fstab, and got dumped to the command line so I could 'fix' the hard disk failure. Vi fstab, remove the entry, reboot, and I'm back in business. Simple, no?
- ATI support under Linux is atrocious. nVidia support, by contrast, is decent if not spectacular. I can say that with experience because I have nVidia and its vendor drivers running on rhea. And I can run Google Earth and other OpenGL applications and still have Beryl running just fine on rhea. But not on europa with ATI. Why this should be is open to interpretation, but part of the blame can be firmly lain at the feet of the kernel devs.
- If I want compositing along with everything else, then I'm going to have to replace the ATI card with an nVidia card, just like I did on rhea. I had thought my ATI problems with rhea were a fluke, but not any more.
- You can't easily migrate home directories between distributions, or at least from Suse to Ubuntu. That's highly annoying considering the history and configurations that build over time. I have yet to fully sort out all the minor but constantly irritating problems that continue to plague my login on europa.
- Ubuntu's package management system runs rings around Suse's package management system. I've read that OpenSuse is changing package managers, but I'm not waiting around to find out if it's any better.
- Suse, especially Open Suse, has a major quality issue. The polished professionalism is gone. I have no idea when (of even if) it will ever be as good as it was in Suse Professional.