Tuesday, June 12, 2007

Why I hate Linux!

First of all I have to say that I don't really hate Linux :) I have used Linux in all kinds of environments and devices since I bought a boxed RedHat Linux 5.2 in 1997. I've used several distributions; several Red Hats, Fedora Core, SuSE, Debian, Ubuntu... I've used Linux in handhelds, on desktop, on server, in development, for multimedia... But ever since the beginning I've heard the legendary line "next year will be the big breakthrough for desktop Linux!". It just hasn't happened.

But the most frustrating thing about Linux is that you always have to be prepared for a fight once you set it up. Linux promises a lot, it has great features, great potential but just don't expect everything to fall in place like it does for Windows and OS X.

My latest frustrating experience is with my new home server when I tried to install the latest Ubutnu Server on it. I didn't want anything extraordinary to the setup, just regular, current hardware; SATA hard drives, Via chipset, Realtek NICs and so on.

I had high hopes when initially installing the Ubuntu 7.07 Live CD, but to my disappointment that ended in a flickering screen after X had successfully started. I say this so you don't need to wonder any more: Ubuntu won't boot with Via chipset without the boot command line option

acpi=off pci=noacpi

Hope that helps someone. This is a common and known bug in Ubuntu.

Next, if you have JMicro's SATA-controller - don't use it.
I also tried to use the the open AHCI protocol, which should work in >2.6.18 kernels but while installing my Ubuntu I only got kernel errors saying IO error. I noticed this after a successful installation procedure, but GRUB saying "Error 21...". YEAH! Great error messages. Once again returning to Google and I managed to find that that means "Drive not found".
Great! Nice! Why then was the installation procedure successful?

I finally got Ubuntu installed when I used the Via SATA controller with regular SATA selected.

So fighting two evening I managed to get Ubuntu at last even to install. And all this just because

  1. The latest Ubuntu's installations procedure is buggy, and because
  2. Linux doesn't correctly support open AHCI standard.
  3. Ubuntu doesn't work with ACPI and causes non-related hangs and other problems (for me at least unrecognized hard drives during boot and flickering screens...)

I finally got my server up and running and once I get this far, I don't expect any further problems. I like Ubuntu's (= Debian's) apt+dpkg packaging system. I like the reliability of Linux. But this doesn't come without a fight. And really, how hard would it be to give valuable feedback to the user when things go wrong? Or have feasible error checking so that some of the problem debugging could have been avoided all together.

I think next I have to write a column called "Why I love Linux!" :)

No comments: