Contents of /xml/htdocs/doc/en/faq.xml

Parent Directory Parent Directory | Revision Log Revision Log

Revision 1.48 - (hide annotations) (download) (as text)
Wed Dec 3 15:07:55 2003 UTC (14 years, 5 months ago) by swift
Branch: MAIN
Changes since 1.47: +3 -3 lines
File MIME type: application/xml
neysx forgot to bump the version/date

1 zhen 1.3 <?xml version='1.0' encoding="UTF-8"?>
2 swift 1.48 <!-- $Header: /home/cvsroot/gentoo/xml/htdocs/doc/en/faq.xml,v 1.47 2003/12/02 19:59:10 neysx Exp $ -->
3 drobbins 1.1 <!DOCTYPE guide SYSTEM "/dtd/guide.dtd">
5 zhen 1.2 <guide link="/doc/en/faq.xml">
6 drobbins 1.1 <title>Gentoo Linux Frequently Asked Questions</title>
7     <author title="Chief Architect"><mail link="drobbins@gentoo.org">Daniel Robbins</mail></author>
8     <author title="Reviewer">Colin Morey</author>
9 swift 1.43 <author title="Editor"><!-- zhen@gentoo.org -->John P. Davis</author>
10 drobbins 1.1 <author title="Editor"><mail link="stocke2@gentoo.org">Eric Stockbridge</mail></author>
11 zhware 1.16 <author title="Editor"><mail link="zhware@gentoo.org">Stoyan Zhekov</mail></author>
12 carl 1.20 <author title="Editor"><mail link="carl@gentoo.org">Carl Anderson</mail></author>
13 peesh 1.26 <author title="Editor"><mail link="peesh@gentoo.org">Jorge Paulo</mail></author>
14 swift 1.29 <author title="Editor"><mail link="swift@gentoo.org">Sven Vermeulen</mail></author>
15 drobbins 1.1 <abstract>This FAQ is a collection of questions and answers collected from the gentoo-dev mailing list and from IRC -- if you have any questions (or answers!) to add, please contact either an author or a member of the documentation team.</abstract>
17 swift 1.42 <license/>
19 swift 1.48 <version>1.1.11</version>
20     <date>December 3, 2003</date>
21 swift 1.36
22     <chapter>
23     <title>Featured Questions</title>
24     <section>
25     <title>Getting Started</title>
26     <body>
27     <ul>
28     <li><uri link="#doc_chap2_sect1">How is Gentoo pronounced, and what does it mean? </uri></li>
29     <li><uri link="#doc_chap2_sect2">What makes Gentoo different?</uri></li>
30     </ul>
31     </body>
32     </section>
33     <section>
34     <title>Installation</title>
35     <body>
36     <ul>
37     <li><uri link="#doc_chap3_sect1">What is the difference between the .iso and .tbz2 files?</uri></li>
38     <li><uri link="#doc_chap3_sect2">Why do the build .iso and .tbz2 files sometimes have different -r (revision) numbers?</uri></li>
39 swift 1.38 <li><uri link="#doc_chap3_sect3">I'm finding things to be really unstable and I'm using "-O9 -ffast-math -fomit-frame-pointer" optimizations. What gives?</uri></li>
40     <li><uri link="#doc_chap3_sect4">What's the default root password after installation?</uri></li>
41     <li><uri link="#doc_chap3_sect5">How can i change the root (or indeed any other user's) password?</uri></li>
42     <li><uri link="#doc_chap3_sect6">How do i add a normal user?</uri></li>
43     <li><uri link="#doc_chap3_sect7">Why can't a user su to root? </uri></li>
44     <li><uri link="#doc_chap3_sect8">How do I enable devfs?</uri></li>
45     <li><uri link="#doc_chap3_sect9">How to I disable devfs?</uri></li>
46     <li><uri link="#doc_chap3_sect10">How do I get a /dev/mouse that doesn't go away when I reboot (when using devfs)? </uri></li>
47     <li><uri link="#doc_chap3_sect11">Grub can't find stage x.y?</uri></li>
48     <li><uri link="#doc_chap3_sect12">My ASUS CUV4X-D won't boot and it freezes during various stages of kernel loading and hardware detection.</uri></li>
49     <li><uri link="#doc_chap3_sect13">If I have Gentoo 1.4_rc1 can I upgrade to 1.4_rc2, 1.4_final/_rc3 without reinstalling?</uri></li>
50     <li><uri link="#doc_chap3_sect14">My kernel doesn't boot (properly), what should I do now?</uri></li>
51 bennyc 1.40 <li><uri link="#doc_chap3_sect15">My proxy requires authentication, what do I have to do?</uri></li>
52 swift 1.36 </ul>
53     </body>
54     </section>
55     <section>
56     <title>Package Management</title>
57     <body>
58     <ul>
59     <li><uri link="#doc_chap4_sect1">In what format are the packages stored?</uri></li>
60     <li><uri link="#doc_chap4_sect2">Why write a new port system (Portage) instead of using BSD's version?</uri></li>
61     <li><uri link="#doc_chap4_sect3">How does this differ from Debian's apt or BSD's ports?</uri></li>
62     <li><uri link="#doc_chap4_sect4">How do I install and uninstall packages?</uri></li>
63     <li><uri link="#doc_chap4_sect5">How can I set a global configuration for compiling packages?</uri></li>
64     <li><uri link="#doc_chap4_sect6">What happened to /etc/make.defaults?</uri></li>
65     <li><uri link="#doc_chap4_sect7">Is there a way to upgrade all installed packages e.g. apt-get upgrade or make World?</uri></li>
66     <li><uri link="#doc_chap4_sect8">When updating a package using emerge or ebuild, how do I avoid clobbering my config files?</uri></li>
67     <li><uri link="#doc_chap4_sect9">I want to perform the ./configure step myself. Can I?</uri></li>
68     <li><uri link="#doc_chap4_sect10">What if rsync doesn't work for me?</uri></li>
69     <li><uri link="#doc_chap4_sect11">How do I use emerge from behind a firewall?</uri></li>
70     <li><uri link="#doc_chap4_sect12">Can I rsync from another operating system?</uri></li>
71     <li><uri link="#doc_chap4_sect13">I have only slow modem connection at home. Can I download sources somewhere else and add them to my system?</uri></li>
72     <li><uri link="#doc_chap4_sect14">.tar.gz sources for installed software are piling up in /usr/portage/distfiles/ using valuable space. Is it safe to delete these files?</uri></li>
73     <li><uri link="#doc_chap4_sect15">I went to emerge blackdown-jdk and blackdown-jre, and afterwards java-config --list-available-vms would only list blackdown-jre. Openoffice would then refuse to emerge. What do I do? </uri></li>
74     <li><uri link="#doc_chap4_sect16">What's in /var/tmp/portage? Is it safe to delete the files and directories in /var/tmp/portage? </uri></li>
75     </ul>
76     </body>
77     </section>
78     <section>
79     <title>Usage</title>
80     <body>
81     <ul>
82     <li><uri link="#doc_chap5_sect1">I have installed openssh on my box, but can only log in as root - my normal user account doesn't work.</uri></li>
83     <li><uri link="#doc_chap5_sect2">I can start X applications as root only. </uri></li>
84     <li><uri link="#doc_chap5_sect3">How do I set up an International Keyboard Layout?</uri></li>
85     <li><uri link="#doc_chap5_sect4">DNS name resolution works for root only. </uri></li>
86     <li><uri link="#doc_chap5_sect5">Why is KDE not reading /etc/profile? </uri></li>
87     <li><uri link="#doc_chap5_sect6">Why can't my user use their own crontab? </uri></li>
88     <li><uri link="#doc_chap5_sect7">How do I get numlock to start on boot?</uri></li>
89 swift 1.37 <li><uri link="#doc_chap5_sect8">How do I have my terminal cleared when
90     I log out?</uri></li>
91 swift 1.36 </ul>
92     </body>
93     </section>
94     <section>
95     <title>Maintenance</title>
96     <body>
97     <ul>
98     <li><uri link="#doc_chap6_sect1">ReiserFS and filesystem corruption issues -- how to fix'em, etc</uri></li>
99     <li><uri link="#doc_chap6_sect2">How to I view the timestamps in /var/log/syslog.d, etc. on a pre-1.0_rc5 Gentoo system? </uri></li>
100 swift 1.41 <li><uri link="#doc_chap6_sect3">Metalogd doesn't log in real time!</uri></li>
101 swift 1.36 </ul>
102     </body>
103     </section>
104     <section>
105     <title>Development</title>
106     <body>
107     <ul>
108     <li><uri link="#doc_chap7_sect1">Where can I report bugs?</uri></li>
109     <li><uri link="#doc_chap7_sect2">How often are new releases made? </uri></li>
110     <li><uri link="#doc_chap7_sect3">I would like a package to be added to Portage; how would I go about this?</uri></li>
111     <li><uri link="#doc_chap7_sect4">How can I add a question or answer to this FAQ?</uri></li>
112     <li><uri link="#doc_chap7_sect5">make -f Makefile.cvs on a KDE app produces "invalid unused variable" errors </uri></li>
113     <li><uri link="#doc_chap7_sect6">My speaker beeps like crazy while compiling Mozilla. How do I disable console beeps? </uri></li>
114     </ul>
115     </body>
116     </section>
117     <section>
118     <title>Resources</title>
119     <body>
120     <ul>
121     <li><uri link="#doc_chap8_sect1">Where can I find more about supervise used by default in Gentoo Linux 1.0_rc5 and earlier? </uri></li>
122     <li><uri link="#doc_chap8_sect2">Where can I find more information about Gentoo Linux? </uri></li>
123     <li><uri link="#doc_chap8_sect3">Can I buy a CD of Gentoo Linux?</uri></li>
124     <li><uri link="#doc_chap8_sect4">Why, when I hit reply to a post on a Gentoo mailing list, does my answer only go to the original poster and not the entire list?</uri></li>
125     <li><uri link="#doc_chap8_sect5">This FAQ hasn't answered my question. What do I do now? </uri></li>
126     </ul>
127     </body>
128     </section>
129     </chapter>
131 drobbins 1.1
132     <chapter>
133     <title>Getting Started</title>
135     <section>
136     <title>How is Gentoo pronounced, and what does it mean?</title>
137 drobbins 1.11 <body><p>Gentoo is a species of small fast penguin, pronounced "gen-too" (The "g" in "gentoo" is a soft "g", as in "gentle".)</p></body>
138 drobbins 1.1 </section>
140     <section>
141     <title>What makes Gentoo different?</title>
142     <body>
143     <p>Gentoo Linux is a fast, modern distribution with a clean and flexible
144     design -- in this respect, Gentoo may appeal to
145     <uri link="http://www.slackware.com/">Slackware</uri>,
146     <uri link="http://www.linuxfromscratch.org">Linux From Scratch</uri> or
147     <uri link="http://www.bsd.org">BSD</uri> users. Unlike most Linux
148     distros, Gentoo has a package system reminiscent of BSD's ports,
149     meaning the packages are continually updated to the lastest
150     versions.
151 zhen 1.5 </p>
152     </body>
153     </section>
154     </chapter>
155 drobbins 1.1
156     <chapter>
157     <title>Installation</title>
158 zhen 1.6
159 zhen 1.9 <section>
160 drobbins 1.1
161 zhen 1.10 <warn>REPORT all bugs to <uri>bugs.gentoo.org</uri>! Do not report bugs to upstream (original)
162 zhen 1.9 authors. Report the bugs to Gentoo, and we will move them upstream if necessary.
163 zhen 1.10 </warn>
164 zhen 1.9
165 drobbins 1.1 <title>What is the difference between the .iso and .tbz2 files?</title>
166     <body><p>The build <e>.tbz2</e> file is a minimal set of system files
167     that is necessary for allowing a user to bootstrap and install
168     Gentoo Linux. The build <e>.iso</e> is a complete, bootable CD image that
169     contains a system kernel, a reasonably complete set of kernel modules,
170     necessary system tools such as <c>mkfs</c> and networking support,
171     as well as the <e>.tbz2</e> minimal-system tarball. Most users will install
172     Gentoo Linux by burning the .iso file onto a CD, booting off of the CD,
173     and installing from within the minimal linux environment provided by
174     the Gentoo boot CD. It is possible, however, for users to install
175     Gentoo Linux directly from an already-existing Linux distribution.
176     Such users need only download the .tbz2 file, install the contents
177     on a spare partition (making sure to use the <c>p</c> flag when
178     untarring the tarball!), chroot, and install in the usual fashion.</p>
179     </body>
180     </section>
182     <section>
183     <title>Why do the build .iso and .tbz2 files sometimes have different -r (revision) numbers?</title>
184     <body><p>
185     The .tbz2 minimal-system tarball only needs to be revised when there have
186     been significant changes to the core Gentoo Linux system (such as baselayout
187     changes, or a new profile), and as such .tbz2 updates are relatively rare.
188     The .iso file tends to get updated whenever we discover that somebody has
189     hardware that won't boot from our .iso. Since new kernel modules and
190     patches are constantly being generated, this situation probably won't
191     stabilise anytime soon.
192     </p>
193     </body>
194     </section>
196     <section>
197     <title>I'm finding things to be really unstable and I'm using "-O9 -ffast-math
198     -fomit-frame-pointer" optimizations. What gives?</title>
199     <body>
200 klieber 1.35 <p>Don't bother using anything higher than <c>-O3</c> since it isn't support by current versions
201 peesh 1.34 of gcc. Very aggressive optimizations sometimes cause the compiler to streamline the assembly code
202 swift 1.30 to the point where it doesn't quite do the same thing anymore. A possible setting based on <e>Loc-Dog</e> (on IRC)'s CFLAGS
203     is <c>-O3 -mcpu=i686 -march=i686 -fforce-addr -fomit-frame-pointer -funroll-loops
204     -frerun-cse-after-loop -frerun-loop-opt -falign-functions=4</c>, which is about
205 drobbins 1.1 as much as I'd want to push global optimization settings. Beyond this, it's best to use
206     ultra-high optimizations only with specific packages where you really need that extra 2%,
207     (eg graphics and various multimedia programs), and where you can easily test the package
208     to ensure that it hasn't been optimized into oblivion.</p>
209 zhware 1.4 <p>Please try first to compile with CFLAGS <c>-march= -O2</c> before reporting a bug</p>
210 drobbins 1.1 </body>
211     </section>
213     <section>
214     <title>What's the default root password after installation?</title>
215     <body><p>The default password is blank; hit enter.</p></body>
216     </section>
218     <section>
219     <title>How can i change the root (or indeed any other user's) password?</title>
220     <body><p>You can use <c>passwd</c> to change the password for the user you are logged into.
221     for extra options and setting, please see <c>man passwd</c> once you've completed the install.
222     </p></body>
223     </section>
224     <section>
225     <title>How do i add a normal user?</title>
226 swift 1.36 <body>
227 drobbins 1.1 <p>The command <c>adduser gentoo</c> will add a user called gentoo. The next step is to give
228     this user a password and <c>passwd</c> will do exactly that.</p>
229 swift 1.36 <p>Instead of <c>adduser</c> you can also use:
230 zhware 1.15 <pre># <i>useradd gentoo -m -G users,audio,wheel -s /bin/bash</i></pre>
231 zhware 1.16 This will add a user gentoo, will make possible for him to use sound-related devices (<path>/dev/sound/*</path>), will make possible for him to switch to root (using <c>su</c>) and will make <path>/bin/bash</path> his login shell.
232 zhware 1.15 </p>
233 swift 1.36 <p>You can also install <c>superadduser</c> using <c>emerge superadduser</c> and then issue <c>superadduser gentoo</c> to add a user called gentoo. Just follow the instructions given to you by <c>superadduser</c>.
234     </p>
235 drobbins 1.1 </body>
236     </section>
237     <section>
238     <title>Why can't a user su to root?</title>
239     <body><p>For security reasons, users may only <c>su</c> to root if they belong to the
240     <e>wheel</e> group. To add a <i>username</i> to the <e>wheel</e> group, issue the following
241     command as root:</p>
242     <pre># <i>usermod -G users,wheel username</i></pre>
243     </body>
244     </section>
245     <section>
246     <title>How do I enable devfs?</title>
247     <body>
248     <p>
249     If you're using 1.0_rc5 or greater, you don't need to do anything special to get
250     devfs working; it's already active (you did make sure that devfs was built into the
251     kernel, didn't you?).
252     However, if you are using a version of Gentoo Linux <e>prior</e> to version 1.0_rc5, add
253     <c>devfs=mount</c> to your <c>GRUB</c> kernel boot options so that the line looks something
254     like <c>kernel /boot/boot/bzImage devfs=mount foo=bar</c> The kernel will then mount the
255     <path>/dev</path> <e>devfs</e> filesystem automatically at boot-time.
256     </p>
257     </body>
258     </section>
259     <section>
260     <title>How to I disable devfs?</title>
261     <body>
262     <p>Under Gentoo Linux 1.0_rc6 and later, you can disable devfs by passing the
263     <c>gentoo=nodevfs</c> to the kernel.</p>
264     </body>
265     </section>
266     <section>
267     <title>How do I get a <path>/dev/mouse </path> that
268     doesn't go away when I reboot (when using devfs)?</title>
269     <body>
270     <p>
271     If you are using 1.0_rc6 or later, then you can just use <c>ln -s</c>
272     to make the usual symbolic link from <path>/dev/mouse</path>, and
273     it will be preserved between reboots.
274     </p>
275     <p>All other users need to edit <path>/etc/devfsd.conf</path>
276     and add these lines:</p>
277     <pre>
278     REGISTER ^misc/psaux$ CFUNCTION GLOBAL symlink misc/psaux mouse
279     UNREGISTER ^misc/psaux$ CFUNCTION GLOBAL unlink mouse
280     </pre>
281     <p>If you are not using the devfs PS/2 mouse <path>/dev/misc/psaux</path> device,
282     adjust the <c>misc/psaux</c> strings above accoringly. You'll then want to
283     <c>killall -HUP devfsd</c>
284     to get devfsd to reread <path>/etc/devfsd.conf</path>.</p>
285     </body>
286     </section>
287     <section>
288     <title>Grub can't find stage x.y?</title>
289     <body><p>
290     During installation the grub boot files are copied
291     to <path>/boot/grub</path> (<path>/boot/boot/grub</path> in Gentoo Linux 1.0_rc5 and
292     earlier.) Grub automatically looks in the <path>/boot/grub</path> directory on the boot
293     partition. (We strongly recommend having a separate no-auto boot partition mounted at
294     <path>/boot</path>, since that way it is much more difficult to clobber your kernel and boot
295     info by accident.) The above error generally arises from (a) not using a separate boot
296     partition, (b) forgetting to mount the boot partition at <path>/boot</path> before either
297     unpacking the build snapshot or running
298     <c>emerge --usepkg system</c>, or (c) forgetting the
299     <c>notail</c> option when mounting a ReiserFS <path>/boot</path> partition.
300     You can get more information on grub, including how to
301     debug grub from the grub prompt, by reading the
302     <uri link="http://www-105.ibm.com/developerworks/education.nsf/linux-onlinecourse-bytitle/0F1731DC664023B7862569D0005C44AF?OpenDocument">IBM developerWorks Grub tutorial</uri>.
303     </p>
304     </body>
305     </section>
307     <section>
308     <title>My ASUS CUV4X-D won't boot and it freezes during various stages of kernel loading and hardware
309     detection. </title>
310     <body>
311     <p>Disable MPS 1.4 (multi-processor-system) in the BIOS or switch this
312     function to 1.1. By using this option you just switch the MPS version. The Multi-Processor-System
313     will still work properly. Make sure to boot Gentoo Linux with the following boot option, noapic. </p>
314     </body>
315     </section>
317 zhware 1.19 <section>
318     <title>If I have Gentoo 1.4_rc1 can I upgrade to 1.4_rc2, 1.4_final/_rc3 without reinstalling?</title>
319     <body>
320     In fact there is no difference between the 1.4 releases <b>after they&apos;ve installed</b>. Gentoo 1.4 and later are <c>glibc-2.3.x</c> based.
321 swift 1.31 As such 1.4rc1 machine for example, that does <c>emerge sync; emerge -u world</c> is <b>exactly the same</b> as a machine with 1.4rc2 installed, after it does <c>emerge sync; emerge -u world</c>. The true differences lie in the installer.
322 zhware 1.19 </body>
323     </section>
324 swift 1.37 <section>
325     <title>My kernel doesn't boot (properly), what should I do now?</title>
326     <body>
327     <p>
328     You don't need to redo every step of the installation, but only the
329     kernel-stuff and all associated steps. Suppose you have installed Gentoo
330     on <path>/dev/hda1</path> (/boot) and <path>/dev/hda3</path> (/) with
331     <path>/dev/hda2</path> being the swap space:
332     </p>
333     <pre caption = "Reconfiguring the kernel">
334     <comment>Boot from the LiveCD and wait until you receive a prompt</comment>
335     <comment>We first mount all partitions:</comment>
336     # <i>mount /dev/hda3 /mnt/gentoo</i>
337     # <i>mount /dev/hda1 /mnt/gentoo/boot</i>
338     # <i>swapon /dev/hda2</i>
339     # <i>mount -t proc none /mnt/gentoo/proc</i>
340     <comment>Then we chroot into our Gentoo environment and configure the kernel:</comment>
341     # <i>chroot /mnt/gentoo /bin/bash</i>
342     # <i>env-update &amp;&amp; source /etc/profile</i>
343     # <i>cd /usr/src/linux</i>
344     # <i>make menuconfig</i>
345     <comment>Now (de)select anything you have (de)selected wrongly at your</comment>
346     <comment>previous attempt. Then quit and compile your kernel:</comment>
347     # <i>make dep &amp;&amp; make bzImage modules modules_install</i>
348     <comment>Now copy over your bzImage file, overwriting your previous one:</comment>
349     # <i>cp arch/i386/boot/bzImage /boot</i>
350     <comment>If you use LILO, rerun lilo -- GRUB users should skip this:</comment>
351     # <i>/sbin/lilo</i>
352     <comment>Now exit the chroot and reboot.</comment>
353     # <i>exit</i>
354     # <i>umount /mnt/gentoo/proc /mnt/gentoo/boot /mnt/gentoo</i>
355     # <i>reboot</i>
356     </pre>
357     <p>
358     If on the other hand the problem lays with your bootloader configuration,
359     follow the same steps, but instead of configuring/compiling your kernel you
360     should reconfigure your bootloader (recompilation isn't necessary).
361     </p>
362     </body>
363     </section>
364 swift 1.38 <section>
365 bennyc 1.40 <title>My proxy requires authentication, what do I have to do?</title>
366 swift 1.38 <body>
368     <p>
369     When you have to download something using <c>wget</c>, use the
370     following syntax to authenticate yourself:
371     </p>
372 bennyc 1.40 <pre caption = "Proxy-authentication using wget">
373 swift 1.38 # <i>wget --proxy-user=</i><comment>username</comment><i> --proxy-passwd=</i><comment>password</comment><i> &lt;url&gt;</i>
374     </pre>
375     <p>
376     To have Portage automatically use this scheme, define it in
377     <path>/etc/make.conf</path>:
378     </p>
379     <pre caption = "/etc/make.conf">
380     FETCHCOMMAND="wget --proxy-user=<comment>username</comment> --proxy-passwd=<comment>password</comment> -t 5 --passive-ftp -P \${DISTDIR} \${URI}"
381     RESUMECOMMAND="/usr/bin/wget --proxy-user=<comment>username</comment> --proxy-passwd=<comment>password</comment> -c -t 5 --passive-ftp -P \${DISTDIR} \${URI}"
382     </pre>
383     <p>
384     Sadly, <c>rsync</c> doesn't seem to support username/password
385 bennyc 1.40 authentication for proxies. See <uri link="#doc_chap4_sect10">What
386 swift 1.38 if rsync doesn't work for me?</uri> for more information on how to
387     handle this situation.
388     </p>
390     </body>
391     </section>
393 drobbins 1.1 </chapter>
395     <chapter>
396     <title>Package Management</title>
397     <section>
398     <title>In what format are the packages stored?</title>
399     <body><p>They exist in our portage tree as <e>ebuild</e> autobuild scripts; we are primarily
400     a ports-based distribution, meaning that we provide scripts (<c>.ebuild</c> files) and a
401     special system (Portage) so that you can build apps from sources. We generally only build
402 swift 1.22 binaries for releases and snapshots. The <uri link="/doc/en/gentoo-howto.xml">Development HOWTO
403 drobbins 1.1 </uri> covers the contents of an ebuild script in detail. For full binary ISO releases, we
404     create a full suite of binary packages in an enhanced <c>.tbz2</c> format (<c>.tar.bz2</c>
405     compatible with meta-information attached to the end of the file.)</p>
406     </body>
407     </section>
409     <section>
410     <title>Why write a new port system (Portage) instead of using BSD's version?</title>
411     <body>
412     <p>In one sentence, because Portage is much better in so many ways. One of the design
413     philosophies of the <c>.ebuild</c> syntax was to make it an analog of what you'd type to
414     install the program manually, thus making Portage very easy to learn and modify to your
415     needs. We also have OpenBSD-style "fake" installs, safe unmerging, system profiles,
416     package masking, a real dependency system, and lots of other good stuff.</p>
417     </body>
418     </section>
420     <section>
421     <title>How does this differ from Debian's apt or BSD's ports?</title>
422     <body><p>Portage features the best of apt and ports; for example, USE options, a full
423     dependency system, safe installs and uninstalls, and a true package database. Think of
424     Portage as the best of both worlds; a ports system with the sensibilities and safety of a
425     Linux package management system built-in.</p></body>
426     </section>
428     <section>
429     <title>How do I install and uninstall packages?</title>
430     <body>
431 swift 1.22 <p>The <uri link="/doc/en/portage-user.xml">Portage User Guide</uri> details how to install
432 drobbins 1.1 and uninstall packages, and update Portage.</p>
433     </body>
434     </section>
436     <section>
437     <title>How can I set a global configuration for compiling packages?</title>
438     <body><p><path>/etc/make.conf</path> should be modified to override global and
439     profile-specific default options used to compile and merge packages. The most common options
440     are as follows:</p>
441     <table>
442     <tr>
443     <th>Flag</th>
444     <th>Description</th>
445     </tr>
446     <tr>
447     <ti>CHOST</ti>
448     <ti>This sets the HOST variable for compiles, e.g. <c>i686-pc-linux-gnu</c></ti>
449     </tr>
450     <tr>
451     <ti>CFLAGS</ti>
452     <ti>The options for <c>gcc</c> when compiling programs written in C (*.c files)</ti>
453     </tr>
454     <tr>
455     <ti>CXXFLAGS</ti>
456     <ti>The options for <c>gcc</c> when compiling programs written in C++ (*.c,*.cpp etc.
457     files)</ti>
458     </tr>
459     <tr>
460     <ti>USE</ti>
461     <ti>This allows you to set what optional components you'd like compiled-in, if
462     available. For example, if you have <c>gnome</c> inside the USE string, then when
463     you compile <c>xchat</c>, it will include GNOME support. All our dependencies are
464     also USE-aware.</ti>
465     </tr>
466     <tr>
467     <ti>GENTOO_MIRRORS</ti>
468     <ti>A space separated list of URIs currently mirroring the Gentoo packages. Portage
469     will attempt download from a <c>GENTOO_MIRROR</c> first before trying the official
470     <c>SRC_URI</c>. To force Portage to skip mirrors, set this variable to "".</ti>
471     </tr>
472     </table>
473     </body>
474     </section>
476     <section>
477     <title>What happened to <path>/etc/make.defaults</path>?</title>
478     <body>
479     <p>As of Portage 1.5 onwards, <path>/etc/make.defaults</path> is antiquated;
480     if you have portage-1.5-r1 or above installed then you can safely delete it.
481     This file has been replaced by <path>/etc/make.profile/make.defaults</path>
482     (<path>/etc/make.profile</path> should actually be a symlink to,
483     <path>/usr/portage/profiles/default</path>),
484     which contains system profile-specific default settings. The priority order of
485     the various configuration files is as follows (highest first):
486     <ol>
487     <li>Environment variables</li>
488     <li><path>/etc/make.conf</path>, for your use</li>
489     <li><path>/etc/make.profile/make.defaults</path>, for profile-specific defaults</li>
490     <li><path>/etc/make.globals</path>, for global defaults (settings not specified in
491     any other place come from here)</li>
492     </ol></p></body>
493     </section>
495     <section>
496     <title>Is there a way to upgrade all installed packages
497     e.g. <e>apt-get upgrade</e> or <e>make World</e>?</title>
498     <body><p><b>YES!</b> Type <c>emerge --update system</c> (use it with <c>--pretend</c> first) to
499     update all core system packages, and use <c>emerge --update world</c> (again, use it with
500     <c>--pretend</c> first) to do a complete system upgrade of all installed packages.
503     </p></body>
504     </section>
506     <section>
507     <title>When updating a package using <c>emerge</c> or <c>ebuild</c>, how do I avoid
508     clobbering my config files?</title>
509     <body><p>
510     Portage now includes config file management support by default. Type
511     <c>emerge --help config</c> for more details. The (overly) simple answer is that if
512     a package installs <path>foo</path> somewhere under <path>/etc</path>, and
513     another <path>foo</path> already exists there, then the new <path>foo</path> will
514     instead be renamed to <path>._cfgxxxx_foo</path> in that directory. A useful
515     tool for examining and updating any protected config files is <c>etc-update</c>,
516 swift 1.27 which is now part of Portage.
517 drobbins 1.1 </p></body>
518     </section>
520     <section>
521     <title>I want to perform the <c>./configure</c> step myself. Can I?</title>
522 swift 1.45 <body>
523     <p>
524     Yes, but it is not trivial, and the next method only works when it is a simple
525     ebuild (i.e. just <c>./configure</c> and <c>make &amp;&amp; make install</c>).
526     Be sure to read the ebuild itself to see how Gentoo handles it.
527     </p>
529     <p>
530     Start with unpacking the ebuild: <c>ebuild
531     /usr/portage/&lt;category&gt;/&lt;package&gt;/&lt;ebuild&gt; unpack</c>.
532     </p>
534     <p>
535     Next, go to <path>/var/tmp/portage/&lt;package&gt;-&lt;version&gt;/work</path>.
536     Inside it you'll find the unpacked sources. Execute the steps you need to
537     perform to configure and compile the package.
538     </p>
540     <p>
541     When finished, execute <c>touch
542     /var/tmp/portage/&lt;package&gt;-&lt;version&gt;/.compiled</c> to trick Portage
543     into thinking it configured and compiled the package. Then finish up with
544     <c>ebuild /usr/portage/&lt;category&gt;/&lt;package&gt;/&lt;ebuild&gt;
545     merge</c>.
546     </p>
548     </body>
549 drobbins 1.1 </section>
551     <section>
552     <title>What if rsync doesn't work for me?</title>
553     <body><p>
554     If you're behind a firewall that doesn't permit
555 swift 1.29 rsync traffic, then you can use <c>emerge-webrsync</c> which will fetch
556     and install a Portage snapshot for you through regular HTTP.
557     <c>emerge-webrsync</c> uses <c>wget</c> to download, so proxy is fully
558     supported.
559     <pre caption="Using emerge-webrsync">
560     ~# <c>emerge-webrsync</c></pre>
561     If you cannot do this either, you can manually download a snapshot
562     from <uri>http://distro.ibiblio.org/pub/linux/distributions/gentoo/snapshots/</uri>.
563     In order to install the snapshot correctly, you first need to remove
564     your current <path>/usr/portage</path> so that outdated ebuilds don't
565     stay available on your system. However, you might want to put
566     <path>/usr/portage/distfiles</path> somewhere safe if you don't want to
567     lose all your sourcecode.
568     <pre caption="Manually installing the snapshots">
569     <codenote>(First download the snapshot and place it in /usr)</codenote>
570     ~# <c>cd /usr</c>
571     ~# <c>mv /usr/portage/distfiles /usr/distfiles-temp</c>
572     ~# <c>rm -rf /usr/portage</c>
573     ~# <c>tar xvjf portage-foo.tbz2</c>
574     ~# <c>mv /usr/distfiles-temp /usr/portage/distfiles</c></pre>
575 drobbins 1.1 </p></body>
576     </section>
578     <section>
579     <title>How do I use <i>emerge</i> from behind a firewall?</title>
580     <body><p>
581     Edit the PROXY settings in <path>/etc/make.conf</path>. If that doesn't work,
582     edit <path>/etc/wget/wgetrc</path> and edit http_proxy and ftp_proxy
583     appropriately.
584     </p></body>
585     </section>
587     <section>
588     <title>Can I rsync from another operating system?</title>
589     <body><p>There's a program called unison that works under both UNIX and Win32, available from
590     <uri>http://www.cis.upenn.edu/~bcpierce/unison/</uri>.</p></body>
591     </section>
593     <section>
594     <title>I have only slow modem connection at home. Can I download sources somewhere else and
595     add them to my system?</title>
596     <body><p>
597     Definitely. You can run <c>emerge --pretend package</c> to see what programs
598 peesh 1.24 are going to be installed. To find out the sources for those packages and where to
599     download the sources from, you can run <c>emerge -fp package</c>.
600     Download sources and bring them on any media
601 drobbins 1.1 home. Put the sources into <path>/usr/portage/distfiles</path> and run
602     <c>emerge package</c> to see it picking up the sources you just brought in!
603     </p></body>
604     </section>
606     <section>
607     <title>.tar.gz sources for installed software are piling up in /usr/portage/distfiles/ using
608     valuable space. Is it safe to delete these files?</title>
609     <body><p>
610     Yes, you can safely delete these files. But if you are on a slow
611     connection, such as a modem, you might want to keep the archives if
612     possible; often several ebuilds will be released for the same version of
613     a specific piece of software - if you have deleted the archive and you
614     upgrade the software it will have to be downloaded from the internet
615     again.
616     </p></body>
617 zhen 1.5 </section>
619     <section>
620     <title>I went to emerge blackdown-jdk and blackdown-jre, and afterwards
621     <c>java-config --list-available-vms</c> would only list blackdown-jre.
622     Openoffice would then refuse to emerge. What do I do? </title>
624     <body>
625     <p>Solution: </p>
626     <pre caption = "Solution">
627     # <c>emerge unmerge blackdown-jre blackdown-jdk </c>
628     # <c>CONFIG_PROTECT="" emerge blackdown-jdk </c>
629     </pre>
631 drobbins 1.1 </body>
632     </section>
633 zhware 1.18 <section>
634     <title>What's in <path>/var/tmp/portage</path>? Is it safe to delete the files and directories in <path>/var/tmp/portage</path>?</title>
635     <body>
636     During compilation, Gentoo saves the sources of the package in <path>/var/tmp/portage</path>. It is safe to clean out all contents of this directory.
637     </body>
638     </section>
639 drobbins 1.1 </chapter>
641     <chapter>
642     <title>Usage</title>
643     <section>
644     <title>I have installed openssh on my box, but can only log in as root - my normal user
645     account doesn't work. </title>
646     <body>
647     <p>
648     This is most probably because your user account doesn't have a valid shell specified. Check
649     for your user entry in
650     <path>/etc/passwd</path> and see if it ends in /bin/bash (or any other shell). If it doesn't,
651     you must set a shell for the user. This is done using the usermod command, like this ;
652     </p>
653     <pre># <i>usermod -s /bin/bash myuser</i></pre>
654     </body>
655     </section>
657     <section>
658     <title>I can start X applications as root only.</title>
659     <body><p>Your <path>/tmp</path> directory has the wrong permissions (it needs the sticky bit
660     set). Type the following as root:</p>
661     <pre># <i>chmod 1777 /tmp</i></pre>
662     </body>
663     </section>
665     <section>
666     <title>How do I set up an International Keyboard Layout?</title>
667     <body><p>Edit the <c>KEYMAP</c> variable in <path>/etc/rc.conf</path>.
668     Then either reboot or restart the keymaps script:
669     <c>/etc/init.d/keymaps restart</c>.</p>
670     </body>
671     </section>
673     <section>
674     <title>DNS name resolution works for root only.</title>
675     <body><p><path>/etc/resolv.conf</path> has the wrong permissions; <c>chmod</c> it as follows:
676     </p>
677     <pre># <i>chmod 0644 /etc/resolv.conf</i></pre>
678     </body>
679     </section>
681     <section>
682     <title>Why is KDE not reading <path>/etc/profile</path>?</title>
683     <body><p>You need to add <c>--login</c> to the first line in <path>/opt/kde2.1/bin/startkde
684     </path>, so that it reads as follows:</p>
685     <pre>#!/bin/sh --login</pre>
686     <p>This fix has been added to recent versions of KDE.</p>
687 zhen 1.17 </body>
688     </section>
690     <section>
691     <title>Why can't my user use their own crontab?</title>
692     <body><p>You need to add that user to the <i>cron</i> group.
693     </p>
694 drobbins 1.1 </body>
695     </section>
696 swift 1.32
697     <section>
698     <title>How do I get numlock to start on boot?</title>
699     <body>
700     <p>
701     If you log on graphically, or want numlock to be activated when
702 swift 1.33 you issue <c>startx</c>, then you must <c>emerge numlockx</c> and
703 swift 1.32 add <c>/usr/X11R6/bin/numlockx</c> to
704     <path>/etc/X11/xinit/xinitrc</path> (for <c>startx</c>) or
705 swift 1.39 <path>/etc/X11/Sessions/</path> (for any graphical login manager) such
706     as <path>/etc/X11/Sessions/Gnome</path> for GDM.
707 swift 1.32 </p>
708     <p>
709     If you work in commandline, you only need to <c>rc-update add
710     numlock default</c> and numlock will be activated on the next
711     reboot.
712     </p>
713     </body>
714     </section>
715 swift 1.37 <section>
716     <title>How do I have my terminal cleared when I log out?</title>
717     <body>
718     <p>
719     To have your terminal cleared, add <c>clear</c> to your
720     <path>~/.bash_logout</path> script:
721     </p>
722     <pre caption = "Clearing the terminal during logout">
723     $ <i>echo clear &gt;&gt; ~/.bash_logout</i></pre>
724     <p>
725     If you want this to happen automatically when you add a new
726     user, do the same for the <path>/etc/skel/.bash_logout</path>:
727     </p>
728     <pre caption = "Making new users their terminal clear on logout">
729     # <i>echo clear &gt;&gt; /etc/skel/.bash_logout</i></pre>
730     </body>
731     </section>
732 swift 1.38
733 swift 1.32
734 drobbins 1.1 </chapter>
736     <chapter>
737     <title>Maintenance</title>
738     <section>
739     <title>ReiserFS and filesystem corruption issues -- how to fix'em, etc</title>
740     <body>
741     <p>
742     If your
743     ReiserFS partition is corrupt, try booting the Gentoo
744     Linux boot CD and run <c>reiserfsck --rebuild-tree</c> on
745     the corrupted filesystem. This should make the filesystem consistent
746     again, although you may have lost some files or directories due
747     to the corruption.
748     </p>
749     </body>
750     </section>
751     <!-- is this still relevant? -cpm -->
752     <section>
753     <title>How to I view the timestamps in /var/log/syslog.d, etc. on a pre-1.0_rc5 Gentoo
754     system?</title>
755     <body>
756     <p>To view multilog (Gentoo Linux 1.0_rc5 and earlier) timestamps, you need to pipe the
757     current log through the <c>tai64nlocal</c>command:</p>
759     <pre>
760 seo 1.14 # <i>tai64nlocal &lt; /var/log/syslog.d/current | less</i>
761 drobbins 1.1 </pre>
763     <p>Or, alternatively, if you want to "tail" the log:</p>
765     <pre>
766     # <i>tail -f /var/log/syslog.d/current | tai64nlocal</i>
767     </pre>
769     </body>
770     </section>
771 swift 1.41 <section>
772     <title>Metalogd doesn't log in real time!</title>
773     <body>
775     <p>
776     Metalog flushes output to the disk in blocks, so messages aren't immediately
777     recorded into the system logs. If you are trying to debug a daemon, this
778     performance-enhancing behavior is less than helpful. When your Gentoo Linux
779     system is up and running, you can send metalog a USR1 signal to temporarily
780     turn off this message buffering (meaning that <c>tail -f
781     <path>/var/log/everything/current</path></c> will now work in real time, as
782     expected) and a USR2 signal to turn buffering back on again. If you want to
783     disable buffering permanently, you can change METALOG_OPTS="-B" to
784     METALOG_OPTS="-B -s" in <path>/etc/conf.d/metalog</path>.
785     </p>
787     <pre caption="Turning metalog buffering on/off">
788     <codenote>To turn the buffering off:</codenote>
789     # <i>killall -USR1 metalog</i>
790     <codenote>To turn the buffering back on:</codenote>
791     # <i>killall -USR2 metalog</i>
792     </pre>
794     </body>
795     </section>
796 drobbins 1.1 </chapter>
798     <chapter>
799     <title>Development</title>
800     <section>
801     <title>Where can I report bugs?</title>
802     <body><p>For bugs within a specific program, contact the program's author. Otherwise, use our
803     Bugzilla bug tracker at <uri>http://bugs.gentoo.org</uri>. You can also visit us in
804 swift 1.27 <c>#gentoo</c> on the <uri link="http://www.freenode.net">FreeNode</uri> IRC network.
805 drobbins 1.1 </p></body>
806     </section>
808     <section>
809     <title>How often are new releases made?</title>
810 zhen 1.13 <body><p>New releases are announced on the <uri link="http://www.gentoo.org/main/en/lists.xml">gentoo-announce</uri>
811 drobbins 1.1 mailing list<!-- TODO: approximatley every X months -->, In reality the packages themselves
812     are updated shortly after the main authors release new code. As for when new Cd images etc
813     are released, that tends to be whenever there are any major updates to the base code, or when
814     new modules get added.</p></body>
815     </section>
817     <section>
818     <title>I would like a package to be added to Portage; how would I go about this?</title>
819     <body><p>Head over to <uri>http://bugs.gentoo.org</uri> and submit a new bug of the type
820     "ebuild". Attach your ebuild to the bug report.</p></body>
821     </section>
823     <section>
824     <title>How can I add a question or answer to this FAQ?</title>
825     <body><p>Submit a new bug over at <uri>http://bugs.gentoo.org</uri> and add it to the
826 swift 1.28 "Docs-user" product, "Gentoo Linux FAQ" component.</p></body>
827 drobbins 1.1 </section>
829     <section>
830     <title>make -f Makefile.cvs on a KDE app produces "invalid unused variable" errors</title>
831     <body><p>
832     Export <c>WANT_AUTOMAKE_1_4=1</c> for all KDE projects before running
833     <c>make -f Makefile.cvs</c>. Also, for KDE2 apps export <c>WANT_AUTOCONF_2_1=1</c>,
834     and for KDE3 apps export <c>WANT_AUTOCONF_2_5=1</c>.
835     </p></body>
836     </section>
839     <section>
840     <title>My speaker beeps like crazy while compiling Mozilla. How do I disable console beeps?
841     </title>
842     <body>
843     <p>
844     Console beeps can be turned off using setterm, like this ;
846     <pre># <i>setterm -blength 0</i></pre>
848     If you would like to turn off the console beeps on boot
849     you need to put this command in
850     <path>/etc/conf.d/local.start</path>. However, this only
851     disables beeps for the current terminal. To disable
852     beeps for other terminals, pipe the command output to the
853     target terminal, like this ;
855     <pre># <i>setterm -blength 0 >/dev/vc/1</i></pre>
857     You need to replace /dev/vc/1 with the terminal
858     you would like to disable console beeps for.
859     </p>
860     </body>
861     </section>
862     </chapter>
864     <chapter>
865     <title>Resources</title>
866     <section>
867     <title>Where can I find more about supervise used by default in Gentoo Linux 1.0_rc5 and earlier?</title>
868     <body><p><!-- TODO: --><uri>http://cr.yp.to/daemontools.html</uri></p></body>
869     </section>
871     <section>
872     <title>Where can I find more information about Gentoo Linux?</title>
873 erwin 1.44 <body><p>The official Gentoo documentation can be found on <uri>http://www.gentoo.org</uri>; general Linux information is at <uri>http://www.tldp.org</uri>.</p></body>
874 drobbins 1.1 </section>
876     <section>
877     <title>Can I buy a CD of Gentoo Linux?</title>
878     <body><p>Yes! Fresh CDRs are available for $5 USD apiece from
879     <uri link = "http://cart.cheapbytes.com/cgi-bin/cart/0070010805">Cheapbytes</uri>.
880     </p>
881     <p>There are also CDs for sale at <uri link = "http://www.tuxcds.com/section.php?section=42">
882     tuxcds</uri> for a very good price. These people also bounce back a portion of the profits
883     to the Gentoo project, so buy them while they are hot! </p>
884     </body>
885     </section>
887     <section>
888     <title>Why, when I hit reply to a post on a Gentoo mailing list, does my answer
889     only go to the original poster and not the entire list?</title>
890     <body>
891     <p>The mailing list administrators have decided to go with minimal munging
892     (altering of mail headers), which means that they have decided against
893     altering headers to have replies go to the mailing list. There are various
894     reasons for this. For example, if a subscriber has a full mailbox, the
895     entire list receives notice of this every time that something is posted.
897     Most GUI based mailers have a "reply to all" function. This will ensure that
898     your reply goes to the mailing list as well as the original poster. Most
899     users of text based emailers already know the methods to use, but if you
900     don't, in Pine, there is a "reply to group" option. Setting Mutt to reply to
901     the list is covered in the unofficial documentation at
902     <uri link="http://forums.gentoo.org/viewtopic.php?t=1085">forums.gentoo.org</uri>.
904     Some list members do not like this method, but it was very heavily
905     discussed when it went into effect, with arguments on both sides.
906     Eventually the list administrators decided to keep it this way. Discussing
907     it on the mailing list will sometimes bring a polite explanation and other
908     times a rather brusque comment to check the archives. Although the
909     administrators regret the inconvenience that it may cause some users, it is
910     felt that at present it is preferable to the alternative for several
911     reasons, many of these covered
912     <uri link="http://www.unicom.com/pw/reply-to-harmful.html">here</uri>.
914     (There are other eloquent arguments in favor of munging, and yes, the list
915     administrators have seen them.) </p>
916     </body>
917     </section>
919     <section>
920     <title>This FAQ hasn't answered my question. What do I do now?</title>
921     <body>
922 neysx 1.47 <p>A good first step is to browse through the relevant <uri
923     link="http://www.gentoo.org/doc/en/index.xml">documentation</uri>,
924 drobbins 1.1 failing that, the various Gentoo Linux mailing
925 zhen 1.23 lists listed on <uri link="http://www.google.com">Google</uri>. To search through the Gentoo mailling lists,
926     just enter "lists.gentoo.org foo" to search for "foo". If all else fails, or you just want
927 drobbins 1.1 to hang out with Gentoo folks, visit us on irc: <i>#gentoo</i>
928     on <i>irc.freenode.net</i>.
929     </p>
930     </body>
931     </section>
932     </chapter>
933     </guide>

  ViewVC Help
Powered by ViewVC 1.1.20