This weekend, I had the chance to try to install a wide variety of OS’s on my server here. Now that I got the last paying customer off, I decided to see if the problems were OS/driver specific, or hardware specific. Unfortunately, I only got to actually install 2 OS’s. What went wrong? Linux still has lousy driver support.
The motherboard in the server has the Intel ICH7 chipset which provides “fake RAID” functionality. Is it as good a true hardware RAID? No, but I prefer it to full software RAID. Mainly, because I’ve seen some real messes caused by software RAID (particularly on Linux), and I’ve never had problems with “fake RAID”. It’s my personal preference, so let’s not debate it, please.
I first tried to install FreeBSD 7.0 (it was running FreeBSD 6.3), but I saw the same problems. I broke the RAID 1, re-installed it with the controller in IDE mode, same problem. To test the driver theory, I recreated the RAID, and embarked on installing every major *Nix distribution on the planet.
Thanks to a ton of good press, I tried Ubuntu first. Ubuntu recognized the “fake RAID” as individual disks, but not the mirror set, so it was out of the question. The instructions I found on the Internet suggesting how to make it work were frightening at best. Next, I tried OpenSolaris 10 (the May 2008 version that’s been getting good reviews). It did not have a driver for the system in “fake RAID” mode, but it did have a driver for it in IDE mode. Alas, it was missing other drivers related to the chipset, so it was out too. Open SUSE 10.3 looked like a winner, but the installer suddenly started throwing feces at itself the moment it tried to write to the disk that it recognized, so it struck out. And Fedora 9 didn’t recognize the mirror set at all (but it did see the individual drive on the controller).
Folks, Linux supposedly has this “great” driver support. And OpenSolaris supposedly wants to make a play in the server room. But regardless of the technical merits or problems with “fake RAID”, the fact is, it has become extreme prevalent, particularly in the server room. All of the inexpensive servers support “fake RAID” and SATA disks, which saves big bucks compared to SAS or SCSI drives and true hardware RAID, sometimes as nearly much as the server itself. Let’s get real, adding $500 in storage costs to a $700 box makes little sense. And it is not like the ICH7 chipset is really off the wall. It is simply a slightly older chipset than the current offering, the ICH9. It’s extraordinarily common, especially in “white box” servers like SuperMicro and Tyan machines. Not supporting it is insane.
I am really not sure how these OS’s expect to make major inroads when support for such a common chipset, or at least support for it in a common configuration, is so abysmal. Before any of the Linux folks out there get up on their high horse and start showing me links to some jerry-rigged “well, if you had Googled past page 2 of the results for this query, you would have seen these 53 pages of instructions, you lazy jerk!” let me remind you of something: I am a real IT person. I don’t jerry-rig. Anything found on some arcane magic ritual that breaks the moment the system performs an automated, binary update and overwrites some special code I hand-compiled doesn’t fly with me. I know, I know, that’s the *Nix way. But I can’t run a server like that, and neither do sys admins who like to keeep their jobs.
I am reminded, once again, of the reason why I use FreeBSD in the first place now. For a system with so little hoopla around it, it actually works. Or maybe that’s because the people involved actually work hard to make a good product, instead of trying to compete for desktop eyeballs against Microsoft.
J.Ja