| By Nicholas Petreley | Article Rating: |
|
| May 16, 2003 12:00 AM EDT | Reads: |
23,569 |
(LinuxWorld) A relatively new distribution called Gentoo Linux is gaining a rapidly increasing, rabidly loyal group of users. The increasing popularity of Gentoo is almost difficult to explain, given that it's clearly a distribution by geeks, for geeks and for nobody but geeks. Obviously a geek can set up a Gentoo system for a non-geek, so you may find novices using Gentoo. You just won't find many novices installing it.
To be more precise, Gentoo Linux is not really a distribution but a meta-distribution. You don't usually install pre-compiled binaries when you add software to a Gentoo system. You most often compile and build the binaries yourself, according to your own personal optimization and configuration settings. Gentoo gives you the ability to treat almost the entire system this way, but it also lets the less-patient users start with a basic pre-compiled system. After that, you can build your own higher-level packages on top of that core installation.
This may sound a lot like another project called "Linux from scratch," but Gentoo has an important difference in philosophy. While Gentoo Linux makes it possible to compile and configure everything on your system exactly the way you like, it also provides you with more structure and tools to ease the process and automate updates.
The heart of Gentoo is its packaging system, Portage. Portage is similar to the BSD Ports system in that it installs software by retrieiving source code and building it on your system, resolving any dependencies as necessary. If any given package is available only in binary form, Portage grabs and installs it that way.
Gentoo considers the process one of merging software into your system, so the basic command for installing software is emerge, which is mostly intuitive. If you want to get rid of some software on your system, you use the command emerge unmerge, which isn't entirely intuitive, but it works.
Installation
If you have any familiarity at all with the process of partitioning hard drives, mounting partitions and basic Unix commands, it isn't all that difficult to install Gentoo if you simply pay careful attention to the instructions. However, the process certainly isn't "easy" when compared to mainstream distributions. You can't just pop in a CD-ROM and answer a few questions; you have to get your hands dirty. Just how dirty depends on the version of Gentoo you are attempting to install, as well as your choice of installation methods. If you want the most-optimized system possible, installation will be a long and tedious process. If you can deal with a generic base system for Gentoo but want to optimize most of the high-level software, it will still be a long and tedious process, but less so.I installed Gentoo Linux 1.4 rc4, which is available for a few different processor types, but the x86 support is only generic x86. Under normal circumstances, Gentoo offers a choice of optimized base systems for a variety of x86 processors so that you don't have to compile everything from scratch to get enhanced performance on Athlon, Pentium 4, or other systems. You can still compile everything from scratch if you like, but installing an optimized base system makes it easier to get a performance boost without as much time and trouble up-front.
I chose the quickest installation, which sacrifices a little performance. The basic software on my system is pre-compiled for a generic x86, but most of the rest of the software is optimized according to my preferences. For example, XFree86, KDE and most of the applications I use daily are all compiled for my Athlon system with the optimization switches I like.
There's no point in walking you through the installation process, because it is fairly well documented on the Gentoo Web site. But it might be useful to share some of the highlights and difficulties I had and how well Gentoo held up under the stress.
The Gentoo documentation does an excellent job of walking you through the process of setting up an Ethernet card so that you can start grabbing things off the Internet almost immediately. The instructions may not be adequate for someone who has anything but a reasonably vanilla system, but anyone likely to be satisfied with Gentoo is also likely to be able to figure out how to handle such differences. Like I said, Gentoo is not for novices, and novices should avoid it unless they are interested in using the experience to graduate from their novice status.
I encountered a number of problems that were the fault of my hardware and motherboard BIOS, and the end result was that I could not boot directly into Gentoo after finishing the initial installation. I was concerned that I might have to reinstall everything from scratch because Gentoo is such a "from scratch" approach in the first place. That wasn't the case. I rebooted the Gentoo CD, got to a command prompt, mounted a few critical partitions and everything I needed to fix the problems was right at my fingertips.
Mother please I'd rather not do it
Gentoo uses GRUB as the default boot loader. At first I thought that was a bad choice, because I couldn't make GRUB work. It turns out my Biostar motherboard won't allow me to boot from the third hard drive (the primary IDE drive on the second IDE port, which is /dev/hdc). I solved the problem temporarily by adding a Gentoo boot option to the LILO configuration I use to boot Debian from the second drive. But in the long run, I had enough problems with the Biostar motherboard that I finally swapped it out for an older but more workable Asus. Once the new motherboard was in place, the system booted Gentoo directly from the third drive without problems.Once I had the basic system installed and running, the rest was just a matter of getting used to the Gentoo way of doing things.
If you want to install a package in Gentoo, you can usually find the package you want by typing emerge -s <search term>. Then you can install the package by typing emerge <package name>. The Portage system will resolve all the dependencies, download the source and compile it for you according to custom options you specify in choice Gentoo configuration files. There are other utilities available, such as qpkg, to manage packages, each with its own set of strengths and weaknesses.
In some respects, Gentoo is more hands-on than distributions like Debian or Red Hat. For example, when you install a package in most other distributions and that package has to be initialized at boot time in one of the runlevels, the package manager usually puts the startup script in the appropriate runlevel directory, automatically. Gentoo makes you do this yourself, but the process is not manual. If you want to run ntpd at boot time by default, you would issue the command rc-update add ntpd default. This puts a link to the ntpd startup script in the directory /etc/runlevels/default. Notice also that this is not the traditional Unix SysV path for runlevel scripts (one fewer reason for SCO to think it can sue the Gentoo folks, I guess).
Likewise, when you install a package that makes changes to files in the /etc directory, you should run etc-update. Unfortunately, this utility is far less intuitive than rc-update, and I still haven't got the hang of it.
I had a problem with the custom Nvidia kernel module for XFree86, as it would frequently hang. I have the same problem with Debian, so the issue is probably related to the card itself or to the kernel module. The nasty thing about the custom Nvidia driver is that it replaces all your OpenGL libraries with custom Nvidia versions, so it can be a pain to switch back to the original XFree86 driver. Someone at Gentoo was thoughtful enough to make this process easy. There is a Gentoo utility called opengl-update that lets you switch between the default OpenGL libraries and the custom Nvidia libraries with a single command.
Hurry up and wait
Naturally, there is a down-side to Portage. It takes a long time to compile some things. For example, OpenOffice took at least two days to finish building. Gentoo fans will no doubt point to the fact that this process is hands-off, but that isn't always true. The OpenOffice installation warns you that OpenOffice is sensitive to some compiler optimizations, which means it may fail. If so, you may have to modify your build options and install it again.Naturally, you can always get a pre-compiled copy of OpenOffice from some other source and install it. It even appears as if Gentoo itself offers a slightly out-of-date verison of OpenOffice in pre-built form. Nevertheless, this is not the sort of approach that works for those in a hurry to get software running.
In the long run, however, Gentoo benefits from the law of increasing returns. Once you have all your favorite software installed, you will rarely find yourself twiddling your thumbs waiting for a fat installation build process to complete.
Philosophy 101
Whenever someone who hasn't used Linux asks me to recommend a Linux distribution, I usually say Red Hat, the de-facto standard. It's a win-win proposition. Once you know your way around Red Hat, it is easier to figure out if another distribution is better suited to your tastes. If you don't find one you like better than Red Hat, then you end up with intimate knowledge of the most-popular distribution, and that can't be bad.Debian has been my favorite for the past few years, but although I could certainly change my mind after a few more months of use, I already like Gentoo more than Debian.
Gentoo and Debian are very much alike in some respects. Debian has three branches: stable, testing and unstable. Gentoo has one branch, with options that will determine whether or not you end up with stable or unstable software, from the kernel to high-level applications. Anyone who likes to use the latest and greatest software won't see much difference between Debian and Gentoo in terms of things that work and things that break, because they're most likely to track the unstable branch of Debian and the latest software for Gentoo.
I'm anxious to see how Gentoo plays out over time. Two things about Debian are annoying. First, there is a philosophical snootiness in its software design that makes things far less intuitive and friendly than they should be. Second, there is an adolescent snootiness developers often exhibit toward each other whenever a conflict arises. The Debian bug list archives are filled with guttersnipe comments where instructions on how to solve a problem should appear. Maybe it's that way among Gentoo developers, too, but I haven't seen any Gentoo list archives. Maybe I just missed the link on the Gentoo Web site, or perhaps they're hidden and for good reason.
Do I still like Debian? I absolutely love it. But for the time being, Gentoo has emerged victorious. Until further notice, Gentoo is now my flavor of Linux. If you have three days to a week to devote to Gentoo, and you're up to the challenge of installing it, I highly recommend it.
Published May 16, 2003 Reads 23,569
Copyright © 2003 SYS-CON Media, Inc. — All Rights Reserved.
Syndicated stories and blog feeds, all rights reserved by the author.
- Migrating to Linux not easy for Windows users
- Time for a new installation paradigm
- Time for a new installation paradigm, Part 2
- Time for a new installation paradigm, Part 3
- Time for a new installation paradigm, Part 4
- Is Windows or Linux easier to install?
- How to run both stable & development versions of KDE with Debian
- Getting GNOME 2 going on Debian
- Linux vs. Windows installation, part 2: Shoot-out at the XP Corral
- Founder of Gentoo Linux, Daniel Robbins, Resigns as Chief Architect
- Gentoo Foundation Achieves Official U.S. Not-For-Profit Status
More Stories By Nicholas Petreley
Nicholas Petreley is a computer consultant and author in Asheville, NC.
- Kindle 2 vs Nook
- Is Cloud Computing Like Teenage Sex?
- GovIT Expo Highlights Cloud Computing
- Tactical Cloud Computing Panel at 1st Annual GovIT Expo
- Cloud Computing Can Revitalize Your Career as Software Developer
- Ubuntu-based Open Source Linux Mint Tests KDE Version
- Yahoo! SVP Shelton Shugar to Discuss Innovation at Cloud Computing Expo
- Virtualization Journal "Readers' Choice Awards" Voting Is Now Open
- Einstein, Sharks and Clouds: IT Security in the Cloud
- Adobe Flex Developer Earns $100K in New York City
- Amazon Web Services Database in the Cloud
- Virtualization Expo Call for Papers Deadline December 15
- Kindle 2 vs Nook
- Cloud CEOs, CTOs & SVPs to Speak at 4th International Cloud Computing Expo
- Is Cloud Computing Like Teenage Sex?
- 1st Annual GovIT Expo: Letter from the Technical Chair
- Ulitzer News: Search vs New Media
- The Difference Between Web Hosting and Cloud Computing
- Cloud Computing Expo: Exclusive Q&A with Yahoo! SVP Cloud Computing
- Confessions of a Ulitzer Addict
- GovIT Expo Highlights Cloud Computing
- Twitter, Linked In, Ning and Ulitzer: Easy Personal Branding Strategy
- My Thoughts on Ulitzer
- Tactical Cloud Computing Panel at 1st Annual GovIT Expo
- The i-Technology Right Stuff
- Linux.SYS-CON.com Exclusive: Linus Discloses *Real* Fathers of Linux
- After Ubuntu, Windows Looks Increasingly Bad, Increasingly Archaic, Increasingly Unfriendly
- Linus' Top Ten SCO Barbs
- A Closer Look at Damn Small Linux
- Netscape Co-Founder's 12 Reasons for Growth of Open Source
- Introducing "Cooperative Linux" - Linux for Windows, No Less
- *POINT - COUNTERPOINT SPECIAL* What's Wrong with the Open Source Community?
- Where Are RIA Technologies Headed in 2008?
- Linux.SYS-CON.com Exclusive: What Would UserLinux Look Like?
- i-Technology Viewpoint: The New Paradigm of IT Buying
- Is Linux Desktop-Ready Yet...or Not?






























