Previous PagePrevious Page
Introduction to Gentoo 20
  • 19 May 2010 03:33:48

Gentoo Linux is an independent version of Linux with the primary goals of operation speed and customizability. Personally, I think one of the main strengths of Gentoo is that one has the opportunity to learn a lot about Linux systems building and using Gentoo Linux when it is compared with more widely used binary distributions. With my instructions here, I expect anyone could install Gentoo successfully, regardless of their background.


Portage is a package manager. Package managers are programs which are used for installing and uninstalling other programs in an operating system. As a simple example, suppose you want to install a new web browser. On a system without a nice package manager, you would use an existing web browser, perhaps, to go to a website, download some files, and click on some install program with a mouse. With a good package manager, you just need to tell the package manager to install the software; if the software exists in the database, the software will be installed! That might make things easier, but a package manager also keeps track of what programs it installed, so you can easily remove them later if you want, which is very useful. But what about software updates? In Windows or Mac OS binary releases, each program will just bother you whenever a new version is released; this is very annoying and extremely redundant. With a good package manager, you can control global updates all at once. Wouldn't that be much nicer than every program telling you a new version is released? If you never worked with a system with a good package manager, you should trust me, because life is much better.

Gentoo's portage system (browse the portage tree) is to me, the thing that defines Gentoo and sets it apart from other Linux distributions. Although most Linux, Unix and BSD systems have some kind of package manager, those package managers pale in comparison with portage on many levels. (Portage may also pale in comparison with Gentoo's paludis, but I omit discussion of paludis on my site.) Portage has a lot more control over the system. Portage is building everything on your Linux system, so in that way the system is self-consistent. Since there are no versions of Gentoo (new builds are released regularly, and the portage tree is updated on a more-than-daily basis with the latest ebuilds), unlike other systems, Gentoo is basically always up-to-date. Of course, the meaning of up-to-date is totally specific to the user, and Gentoo systems can mismatch old and new codes in a way unlike other distributions I've worked on. For example, I built a modern Gentoo system (late 2009) that could boot a 2.4 kernel (we needed it at the lab for some old local code).

Brief criticism of the official Gentoo Handbook

I will detail how to install Gentoo systems. Of course, the Gentoo Handbook is the authoritative reference, and anyone using the pages I wrote is encouraged to also compare it with the Gentoo Handbook as they proceed. However, obviously I would not spend the time to write a page on installing Gentoo if I thought the Gentoo Handbook alone is enough for a beginner of Gentoo or Linux in general. I will also explain explicitly and fully how to boot Gentoo with any combination of Mac OS X and Windows XP, which is not (and probably should not be) covered in the Handbook.

The order you set many configurations is somewhat arbitrary. For many cases, you could do them literally whenever you please during the Gentoo install before your first reboot. On the other hand, in the Gentoo Handbook, some configurations are spread throughout different places, quite arbitrarily, which in some cases is erroneous and in other cases is just poorly organized. For example, there is a suggestion to emerge portage before the instructions to edit make.conf are issued—this is confusing and wrong. The configuring of fstab is after the kernel configuration, even though some users might choose to use genkernel which in turn may pull information from fstab; while this is rectified in general by genkernel and the real_root kernel boot parameter, it's still poor organization. And, for more organizational nonsense, as of this writing, setting the user's local timezone is a part of 'Configuring the Kernel' rather than 'Installing the Gentoo Base System' or 'Configuring your System,' the two categoies directly above and below the section explaining the kernel, respectively. Setting the timezone might be organizationally more coherently placed near editing /etc/conf.d/clock.

Thus, if you are using my tutorial, please don't think my organization is accidentially different than the official Handbook—I believe my organization is more coherent and more accurate where there are differences. However, there are some places that I do not elaborate all the available options or explain some of the more technical details, and for that, the Handbook is a useful supplement to this guide.

My experience with Gentoo

The first time I ever installed a Linux system by myself was a Gentoo system on a MacBook in the May of 2007. Before that my only experience installing any kind of Linux system was installing RedHat from a corporate CD in a community college course on Linux Installation; that was back in the days when we had to first boot from a 3.5" floppy disk in order to make the CD-ROM bootable. I'd used Linux systems since that time, but as far as the command line, I didn't have a lot of experience besides basic tools like cd, pwd, ls, cp, mv, rm, chmod, and so on.

Any time I talk to people about using Gentoo, all I ever hear is this notion that "Gentoo is hard" and this scares people away. Look, if someone with nearly no Linux experience can install Gentoo as their first Linux system, on a proprietary laptop, then you can do it too! Thus, while I think the Gentoo Handbook is excellent, here I go into a lot of painstaking details, with my target audience as users who may know next to nothing about Linux, because installing and using Gentoo is a great way to learn Linux. If Gentoo is appealing only to advanced users, then the idea of Gentoo as a learning tool is lost. So, Gentoo Linux may not be for the faint-of-heart, and learning is accomplished best by doing, which is not always easy. But with a good guide, I believe anyone can successfully install and use Gentoo Linux, and here I've tried to provide such a guide.

Although my tutorial is written with inexperienced Linux users in mind, there's no reason more advanced users cannot also use my guide. I also gloss over some points I consider unnecessarily complicated for beginning users that are covered in the Gentoo Handbook, and since my document is not meant to replace the Gentoo Handbook, please don't complain to me if I don't tell users every single option that exists, because then I'd never finish this tutorial. However, I like to emphasize that anything I omit or gloss over is not necessary for a functional Gentoo system nor a functional understanding of that system. If you like, the Gentoo Handbook is a document written by more advanced users for more advanced users. This documentation then, is written by a less experienced user for less experienced users.

My first Gentoo install took me about 40 hours, and I admit, it was a little tedious. At this time, I've installed about 10 Gentoo systems, and usually its taking me about 3 hours before my first reboot into the new system. Whenever I do Gentoo installs, I carry around my own notes, which were initially based on the Gentoo Handbook, but have since had various extra points added and/or clarified. While some of my notes were originally typed up, now it's literally a stack of paper I've written all over, and as long as I'm re-typing it all for myself, I might as well put it into HTML and publish it. Thus, while the purpose of this document is as much for myself as anyone else, I hope my documentation and perspective can help other people interested in installing Gentoo Linux be successful.

Installing Gentoo

This guide will detail how to install Gentoo Linux as a stand-alone operating system, a dual-booted system with Windows XP, a dual-booted system with Mac OS, or a triple-booting system with Mac OS, Gentoo Linux, and Windows XP. The Gentoo Handbook will not explain to you how to properly boot Gentoo with other operating systems; in fact, this is likely a topic which is best suited for a page like this rather than the official documentation anyway. In this way, if no others, I believe my documentation can be useful to others.

Some parts of the process are identical, and others are different. As the tutorial proceeds, you will need to follow the correct link to the next pages in the cases where the instructions differ for different partitioning schemes and multiple operating system usage. I hope this setup is as clear as possible while allowing me not to create four independent sets of instructions which share much of the same content. But for all cases, we need to start from the same place, using a Live CD and understanding the unaltered partition structure of the target harddisk.

        (__)               __(^^)              /   /    (__)      / PhD  \  (oO)     /|  /---^^---/     / | /| daid  ||    *  || ||------||
Next page