Updated: September 12, 2011
Believe it or not, I have finally included CentOS in my home production setup. After many years of unbroken hegemony of openSUSE and Ubuntu, the balance has been shattered. It is not so much a testimony of failure of either of the two, more sort of a great success that CentOS has reaped.
Anyhow, this article has many purposes, many angles. First, I will tell you all about my motivations, the many-year-long deliberation that culminated in this dramatic change of the operational setup, which is about equal to the Polio vaccine discovery. Then, I will tell you about the installation and configuration, what it took, what problems I had to face, as well as the good and bright and shiny things. Finally, we'll dabble in fancy stuff, cool programs and the general reasons why CentOS rocks.
A short story how it all began
There are going to be quite a few links to other articles below, so excuse the spam, if you will. Anyhow, approx. one year back, I did my RedHat 6 Beta review. This is where it all started.
Previously, CentOS 5 was a very decent, stable product, but it was not suited for modern machines, including laptops. The brand-new version 6 promised modernity all over, and with the release of CentOS 6, it all came true. Scientific Linux was another hot contestant, but it lost by a narrow margin. And you may have guessed the CentOS setup was soon to come, especially after you read my pimping article that showed what a beauty CentOS really is.
On the other hand, openSUSE is as steady as a rock. Ubuntu has started losing some of its charm, even as it gains more accessibility. But the combination of too many, too rapid changes and the Unity interface put me off the Ubuntu stock. There's Mint that will be replacing some of Ubuntu installations and there's Kubuntu, which will cover the rest, but there's time until the LTS release expires. For the time being, it's playground and testing, running from an external USB disk.
Speaking of the external disk, openSUSE runs there too, now, paired to my HP Pavilion laptop, so I could afford to dislodge the resident installation of the quadruple setup placed on the internal disk of the LG RD510 machine. The vacancy was occupied by CentOS 6. This article will tell you all about my setup, the problems, the difficulties, the great stuff.
I must admit that I did encounter problems and will elaborate on them as we go through the article. However, none of these were critical or sufficient enough to abort the project. You may argue that Ubuntu and family does more for less, but I will also tell you why CentOS pays more in the long run, even if your initial setup might take a few snags.
We will discuss installations on internal and external disks, GRUB and GRUB2 mixing, setting up the Nvidia graphics card, although there's a separate article coming for just that, adding extra repositories and setting their priorities right.
First attempt, HP Pavilion, external disk
This did not work; but then, I failed to achieve this with any recent RedHat-based distro, Fedora included. For some reason, the systems don't like to be placed on an external disk, so this attempt will remain a challenge for the future.
Second attempt, LG RD510, internal disk
All of the hardware was properly detected and initialized. The installation went fine. The one thing I paid attention to was to place the GRUB legacy bootloader on the root partition of the installation rather than the MBR, which is where a GRUB2 bootloader is installed, commanded by one of the Ubuntu installations. After that, I created the CentOS script and updated the GRUB configuration. CentOS would not boot. It would fail with the following error:
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
Remember this error, we will have a separate article that tackles this issue, in relation to Kdump, so worry not. To get underway, I tried a different method - chainloading the GRUB legacy from GRUB2. This worked fine. CentOS was now and running as intended.
Setting up repositories
If you did read my pimping article and/or Scientific Linux reviews, you will know that you need additional repositories for programs like VLC, LyX, Flash, media codecs, and such. Moreover, the repositories also need to be given priorities to avoid conflicts. The article that elaborates on the multiple extra repository setup on Scientific applies equally well to CentOS.
After reading about what each repository offers, I eventually settled for two extra sources, ATRPMS and EPEL, with ATRPMS having a higher priority than the other, and the YUM repositories protected by the protectbase and priorities plugins.
Nvidia card setup
CentOS has a fairly olden method of installing the graphics card. You will need to download the driver from the Nvidia site, install sources, headers and gcc, then drop to runlevel 3, install the driver, go back to runlevel 5. This is pretty much what I had to do back in 2006-2007 with openSUSE. It's not a painful exercise but might require recompiling on kernel updates.
Moreover, CentOS ships with the Nouveau driver enabled and running, and this one conflicts with the Nvidia driver. In fact, it won't install until Nouveau is removed. This can be accomplished in many ways, the simplest is to blacklist the driver in the GRUB menu by adding rdblacklist=nouveau to the kernel line. Alternatively, you can permanently disable the driver under /etc/modprobe.d/blacklist.conf. See my Linux commands article for more tips. You may find this cumbersome, but at least you don't get weird messages that your expensive card is not in use.
But soon, the proprietary driver was installed and purring sweetly. What more, the laptop heats much less with the Nvidia driver in place. Compiz fun just a few mouse scrolls below.
Note: It is possible to install the graphics driver via the repositories. I will elaborate more on this method in a separate tutorial. Many thanks to Ocky and mac_guy911 for their suggestions.
I installed a handful of good stuff - Google Chrome, VLC, LyX, Compiz, Emerald, bad and ugly plugins including the MPlayer browser thingie, Flash, gconf-editor, hardware sensors, and more. I removed most of the KDE stuff that comes bundled in the live DVD, which is what I used for the installation. I did not install the latest Firefox or LibreOffice just yet.
There wasn't much stuff necessary, except the X cannot be killed using a keyboard sequence. Ctrl + Alt + Backspace is disabled by default. However, if you edit your existing keyboard layout, you can easily make the change.
Before I show you Compiz, let's consider some numbers. We have a 64-bit machine with the proper Nvidia driver in place, tolling about 320MB of memory overall. That's a very decent figure, wouldn't you agree.
Ah, the sweetness. With Fusion Icon in place, you can toggle the windows managers and decorators without using clumsy command-line stuff. Then, with a bit of careful work, I tweaked the Emerald theme, including some transparency, shadows, glow, the thickness of the window bar, the color and gradients, and a few more highlights. Combine that with a lovely wallpaper, rain, expo and cube effects, and you're in for a splendid treat. Oh, do notice the CentOS logo on the top of the cube cap peeking softly through the wallpaper.
Some more cool screenshots:
So you might say - I can do all this in Ubuntu in half the time. Perhaps, but you will have to install your Ubuntu three or four times in the coming six years while your CentOS will still be supported. It's super stable, it's light, it's elegant. And it was never meant to be a desktop, which makes it even more fun.
There are a few things that you must pay attention to when handling CentOS - the hard disk choice, the bootloader, the repositories and their priorities, the graphics driver installation. But even these items were not show stoppers in any way. You work around them elegantly, without frustration or panic. Just follow the steel-sharp instructions and things sort out in a predictable manner. Really nice.
I guess that would be all. I'm most pleased. It's as if a part of my soul clicked in place. The long-awaited CentOS setup that is stable, long-term and modern is finally here, the blend of all good things, the ultimate combination of everything one might want or need. The perfect desktop, indeed. Well, expect more great articles. Stay tuned.