FAQ/zh-cn

This FAQ is a collection of questions and answers collected from the gentoo-dev mailing list and from Gentoo channels on Freenode Internet Relay Chat (IRC).

介绍
Please note that many of these questions are answered within the official Gentoo documents and guides. This is simply a list of common questions. Please read Gentoo documentation and man pages to gain a greater understanding of how Gentoo and GNU/Linux works, and for answers to questions which may not be answered here.

Gentoo如何发音，做何解释？
“Gentoo”读作"gen-too"（这里的"g"在"Gentoo"中是一个清辅音，和在"gentle"发音一样）. Gentoo_penguin的学名是巴布亚企鹅. “Gentoo”命名来自福克兰群岛的企鹅.

Gentoo有什么特别的地方？
Gentoo uses a BSD ports-like system called Portage. Portage is a package management system that allows great flexibility while installing and maintaining software on a Gentoo system. It provides compile-time option support (through USE flags), conditional dependencies, pre-package installation summary, safe installation (through sandboxing) uninstallation of software, system profiles, and configuration file protection amongst several other features.

By default in Gentoo the entire system is built from source code, using the user's choice of optimizations. The user has complete control over which packages are or are not installed. Gentoo provides numerous choices, so users can install Gentoo to their own preferences, which is why Gentoo is called a meta-distribution.

Gentoo is actively developed. The entire distribution uses a rapid pace development style: patches to packages are quickly integrated in the mainline tree, documentation is updated on daily basis, Portage features are added frequently, and official releases occur twice per year.

Things are really unstable when using -O9 -ffast-math -fomit-frame-pointer optimizations. What gives?
Do not bother using anything higher than  since it is not supported by current versions of GCC. Very aggressive optimizations sometimes cause the compiler to streamline the assembly code to the point where it does not quite do the same thing anymore.

Please try to compile with CFLAGS  before reporting a bug.

How do I change the root (or any other user's) password?
Use the passwd command to change the password for the user that is logged in. The root user can change user's password by issuing the command passwd username. For extra options and settings see passwd's manual page (man passwd).

How do I add a normal user?
The command useradd larry will add a user called "larry". However, this method does not give the user many of the rights needed to work properly on the system, so the following command is preferred:

This will add a user called "larry". The  option adds the user to a number of groups:
 * which is the standard group for interactive users on the system
 * which allows the user to access sound devices
 * which allows the user to execute the su command to gain root privileges (if he knows the root password)

Why can't a user su to root?
For security reasons, users may only su to root if they belong to the wheel group. To add a username to the wheel group, issue the following command as root:

Can I upgrade Gentoo from one release to another without reinstalling?
In fact, there is no difference between the various releases after they have been installed. Gentoo 1.4 and later are  (or higher) based. As such, running emerge --sync && emerge -uDN @world will bring the entire system up to speed with the "latest Gentoo". The differences between individual releases lie in the installation medium and pre-compiled packages. See the Gentoo Upgrading Guide for more information about profiles and their role in upgrading.

Also note that the emerge -uDN world</tt> command updates the installed packages as well as their dependencies, but not the build-time dependencies (packages needed during builds but not when the software is installed). To update those as well, add the  option.

My kernel does not boot, what should I do now?
It isn't obligatory to redo every step of the installation. However, investigating the kernel and all associated steps is necessary. Suppose that Gentoo is installed on  and   with  being the swap space.

Boot from the install CD and wait until a command prompt shows up.

First mount all the partitions:

Then chroot</tt> into the Gentoo environment and configure the kernel:

Now (de)select anything that was (de)selected wrongly on the previous attempt, quit, and compile the kernel:

Now copy the bzImage file, overwriting the previous one:

If LILO has been used as the bootloader, rerun lilo</tt> - GRUB users should skip this step:

Exit the chroot and reboot the system.

If, on the other hand, the problem lies with the bootloader configuration, follow the same steps, but instead of configuring and compiling the kernel, reconfigure the bootloader (recompilation of the bootloader is usually not necessary).

My proxy requires authentication, what do I have to do?
To have Portage automatically use this scheme, define it in :

How do I burn an ISO file?
ISO files must be burned in raw mode. This means the file should not just be placed on the CD, but interpreted as an entire CD.

There are lots of CD burning tools available; covering them all would be a Sisyphean problem. However, describing a few popular tools never hurts:


 * With EasyCD Creator select, . Then change the to . Then locate the ISO file and click . After clicking  the ISO image will be burned correctly onto the CD/DVD.


 * With Nero Burning ROM, cancel the wizard which automatically pops up and select from the  menu. Select the image to burn and click . Now click the  button and watch the brand new Gentoo Live CD being burnt.


 * With cdrecord</tt>, simply type cdrecord dev=/dev/cdrom</tt> (replace with the CDROM drive's device path) followed by the path to the ISO file.


 * With K3B, select →  → . Then locate the ISO file within the 'Image to Burn' area. Click  to begin the burn process.


 * With Mac OS X Panther, launch Disk Utility</tt> from, select from the  menu, select the mounted disk image in the main window and select  in the  menu.


 * With Mac OS X Jaguar, launch Disk Copy</tt> from, select from the  menu, select the ISO and click the  button.

What CD/stage should I use for my CPU?
First find out what CPU is in the system Gentoo is to be installed on (for instance a Pentium-M). Next find out what CPU type it is compatible with (instruction-wise) to find a proper match with Gentoo's CD or stages. Consulting the CPU's vendor website for this information usually works, although querying a search engine of choice is usually more efficient.

When uncertain, take a "lower" CD/stage file, for instance a i686 or even generic x86 (or the equivalent in the system's arch). This will ensure that the system will work, but may not be as fast as further optimizations.

Please note that many more options exist than those for which Gentoo builds binary stages. Please see the GCC guide for setting the  flag.

The Internet does not work after rebooting. What is wrong?
First verify that the network card is discovered properly by the kernel. Run ifconfig -a</tt> and look for network interfaces. Something such as eth0, eno1, enp2s0, enp0s8, wlan0 (in case of certain wireless network cards) should be present. Specific kernel modules may be required for the kernel to properly detect the network card. If that is the case, make sure that the required kernel modules are listed in the file.

If support for the system's network card has been left out of the kernel, it will need to be reconfigured and, in some cases, recompiled.

If the network card is found by the kernel, but the network configuration has been set to use DHCP, a DHCP client might not have been installed on the system. There are many DHCP clients available in Gentoo, a common one being dhcpcd</tt>. If necessary to get the connection to the Internet working reboot to the installation CD and emerge -a dhcpcd</tt>.

Information on how to rescue the system using the installation CD is available here as well.

Attempting to boot Windows from GRUB or LILO only shows a black screen. What should I do?
This is a known problem. Windows refuses to boot when it is not installed on the first hard drive and shows a black/blank screen. To handle this, it is necessary to "fool" Windows into believing that it is installed on the first hard drive with a little tweak in the boot loader configuration. Please note that in the below example, Gentoo is installed on (first disk) and Windows on  (second disk). Adjust the configuration as needed:

This will make Windows believe it is installed on the first hard drive and boot without problems. More information can be found in official GRUB documentation and in man lilo.conf</tt>.

How do I install Gentoo using a stage1 or stage2 tarball?
The Gentoo Handbook only describes a Gentoo installation using a stage3 tarball. However, Gentoo still provides stage1 and stage2 tarballs. This is for development purposes (the Release Engineering team starts from a stage1 tarball to obtain a stage3) but should not be used by users: a stage3 tarball can very well be used to bootstrap the system. A working Internet connection is a requirement.

Bootstrapping means building the toolchain (the C library and compiler) for the system after which all core system packages are installed. To bootstrap the system, perform a stage3 installation. Before starting the chapter on Configuring the Kernel, it might be necessary to modify the script to match personal requirements:

After modifications, run the script.

Next, rebuild all core system packages with the newly built toolchain. We need to rebuild them since the stage3 tarball already offers them:

Now continue with Configuring the Kernel.

In what form are the packages stored?
Packages are not "stored" per se. Instead, Gentoo provides a set of scripts which can resolve dependencies, fetch source code, and compile a version of the package tailored to the user his needs. Generally Gentoo only builds binaries for releases and snapshots. The Gentoo Developer Manual covers the contents of an ebuild script in detail.

For full ISO releases, a full suite of binary packages will be created using an enhanced  format, which is  compatible with meta-information attached to the end of the file. These can be used to install a working (though not fully optimized) version of the package quickly and efficiently.

It is possible to create RPMs (Red Hat package manager files) using Gentoo's Portage, but it is not currently possible to use already existing RPMs to install packages.

I want to perform the ./configure step myself. Can I?
Yes, but it is not trivial, nor is it recommended. Since the method to do this requires a good understanding of Portage internals and commands, it is instead recommended that the ebuild is patched to do whatever it is that the user wants and place it in a Portage overlay (that is why overlays exist). This is much better for maintainability, and usually easier. See the Gentoo Developer Manual for more information.

What if rsync does not work for me?
When behind a firewall that does not permit rsync traffic through port 873, the emerge-webrsync</tt> command can be used to fetch and install a Portage snapshot through regular HTTP. See this section for information on downloading source files and Portage snapshots via a proxy.

I have a slow (or no) Internet connection at home. Can I download sources somewhere else and add them to my system?
Definitely. Run emerge --pretend package/atom</tt> to see what programs are going to be installed. To find out the sources for those packages and where to download the sources from, run emerge -fp package/atom</tt>. Download sources and bring them on any media home. Put the sources into the folder and then simply run emerge package/atom</tt>. Be warned: this can be a very tedious process.

Source tarballs are collecting in /usr/portage/distfiles/. Is it safe to delete these files?
Deleting these files will have no negative impact on day-to-day performance. However, it might be wise to keep the most recent version of the files; often several ebuilds will be released for the same version of a specific piece of software. If the archive is deleted and the software is upgraded or rebuilt it will be necessary to download them from the Internet again.

Use the eclean</tt> script from to manage the contents of  and a few other locations. Please read <tt>man eclean</tt> to learn more about its usage, as well as the Gentoolkit article.

What is in /var/tmp/portage? Is it safe to delete the files and directories in /var/tmp/portage?
During compilation, Gentoo saves the sources of the package in. These files and folder are usually deleted upon a successful merge, but this sometimes fails. It is safe to clean out all contents of this directory if the <tt>emerge</tt> command is not running. Be sure to always <tt>pgrep emerge</tt> before cleaning out this directory.

How do I set up an International Keyboard Layout?
Edit the  variable in. To have console working correctly with extended characters in the keymap, it might be necessary to set up the variables  and   in the  file (for further information on localizing the environment, refer to the localization guide). Then, issue a <tt>reboot</tt>, or restart the keymaps and consolefont scripts:

DNS name resolution works for root only
has the wrong permissions; <tt>chmod</tt> it as follows:

Why can't my user use their own crontab?
Add that user to the cron group:

How do I get numlock to start on boot?
The following command will add the numlock service to the default runlevel, enabling numlock at boot:

Each GUI provides different tools for this sort of thing; please check the help section or online manuals for the GUI of choice for further assistance.

How do I have my terminal cleared when I log out?
To have the terminal cleared, add the <tt>clear</tt> command to the user's script:

To have this happen automatically when adding a new user, do the same for the file:

ReiserFS and filesystem corruption issues - how to fix them, etc
If the ReiserFS partition is corrupt, try booting the Gentoo Install CD and run <tt>reiserfsck --rebuild-tree</tt> on the corrupted filesystem. This should make the filesystem consistent again, although there may be some lost files or directories due to the corruption.

Where can I report bugs?
Use the Bugzilla site to report bugs. Visit #gentoo on the Freenode IRC network and ask around if it is unclear whether an issue is really a bug or not.

How often are new releases made?
Gentoo's packages are usually updated shortly after the upstream authors release new code. As for when Gentoo itself makes new stage/profile/ISO releases, check the Release Engineering Project page. New releases are announced on the gentoo-announce mailing list. See this section for more information.

My speaker beeps like crazy. How do I disable console beeps?
Console beeps can be turned off using setterm, like this:

To turn off the console beeps on boot, put the following command in the file. However, this only disables beeps for the current terminal. To disable beeps for other terminals, pipe the command output to the target terminal, like this:

Replace with the terminal for which console beeps need to be disabled.

Where can I find more information about Gentoo Linux?
Much of the official Gentoo documentation can be found here on the Wiki. Some older documentation is still available at http://wwwold.gentoo.org/doc/en/.

Can I buy a CD of Gentoo Linux?
Users who are not able to download and burn installation CDs personally might find one through one of our licensed stores. However, most stores have dropped offering CDs and DVDs as these installation media quickly become obsolete.

The licensed stores are listed on the stores page.

This FAQ has not answered my question. What do I do now?
A good first step is to browse through the relevant documentation, failing that, the various Gentoo Linux mailing lists listed on Google. To search through the Gentoo mailing lists, enter "site:lists.gentoo.org foo" to search for "foo". If all else fails, or to just hang out with Gentoo folks, visit us on the #gentoo Freenode IRC channel.