| 1 |
zhen |
1.3 |
<?xml version='1.0' encoding="UTF-8"?> |
| 2 |
drobbins |
1.1 |
<!DOCTYPE guide SYSTEM "/dtd/guide.dtd"> |
| 3 |
|
|
|
| 4 |
zhen |
1.2 |
<guide link="/doc/en/faq.xml"> |
| 5 |
drobbins |
1.1 |
<title>Gentoo Linux Frequently Asked Questions</title> |
| 6 |
|
|
<author title="Chief Architect"><mail link="drobbins@gentoo.org">Daniel Robbins</mail></author> |
| 7 |
|
|
<author title="Reviewer">Colin Morey</author> |
| 8 |
|
|
<author title="Editor"><mail link="zhen@gentoo.org">John P. Davis</mail></author> |
| 9 |
|
|
<author title="Editor"><mail link="stocke2@gentoo.org">Eric Stockbridge</mail></author> |
| 10 |
zhware |
1.16 |
<author title="Editor"><mail link="zhware@gentoo.org">Stoyan Zhekov</mail></author> |
| 11 |
carl |
1.20 |
<author title="Editor"><mail link="carl@gentoo.org">Carl Anderson</mail></author> |
| 12 |
peesh |
1.26 |
<author title="Editor"><mail link="peesh@gentoo.org">Jorge Paulo</mail></author> |
| 13 |
swift |
1.29 |
<author title="Editor"><mail link="swift@gentoo.org">Sven Vermeulen</mail></author> |
| 14 |
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> |
| 15 |
|
|
|
| 16 |
zhen |
1.23 |
<version>1.1.4</version> |
| 17 |
swift |
1.31 |
<date>12 May 2003</date> |
| 18 |
drobbins |
1.1 |
|
| 19 |
|
|
<chapter> |
| 20 |
|
|
<title>Getting Started</title> |
| 21 |
|
|
|
| 22 |
|
|
<section> |
| 23 |
|
|
<title>How is Gentoo pronounced, and what does it mean?</title> |
| 24 |
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> |
| 25 |
drobbins |
1.1 |
</section> |
| 26 |
|
|
|
| 27 |
|
|
<section> |
| 28 |
|
|
<title>What makes Gentoo different?</title> |
| 29 |
|
|
<body> |
| 30 |
|
|
<p>Gentoo Linux is a fast, modern distribution with a clean and flexible |
| 31 |
|
|
design -- in this respect, Gentoo may appeal to |
| 32 |
|
|
<uri link="http://www.slackware.com/">Slackware</uri>, |
| 33 |
|
|
<uri link="http://www.linuxfromscratch.org">Linux From Scratch</uri> or |
| 34 |
|
|
<uri link="http://www.bsd.org">BSD</uri> users. Unlike most Linux |
| 35 |
|
|
distros, Gentoo has a package system reminiscent of BSD's ports, |
| 36 |
|
|
meaning the packages are continually updated to the lastest |
| 37 |
|
|
versions. |
| 38 |
zhen |
1.5 |
</p> |
| 39 |
|
|
</body> |
| 40 |
|
|
</section> |
| 41 |
|
|
</chapter> |
| 42 |
drobbins |
1.1 |
|
| 43 |
|
|
<chapter> |
| 44 |
|
|
<title>Installation</title> |
| 45 |
zhen |
1.6 |
|
| 46 |
zhen |
1.9 |
<section> |
| 47 |
drobbins |
1.1 |
|
| 48 |
zhen |
1.10 |
<warn>REPORT all bugs to <uri>bugs.gentoo.org</uri>! Do not report bugs to upstream (original) |
| 49 |
zhen |
1.9 |
authors. Report the bugs to Gentoo, and we will move them upstream if necessary. |
| 50 |
zhen |
1.10 |
</warn> |
| 51 |
zhen |
1.9 |
|
| 52 |
drobbins |
1.1 |
<title>What is the difference between the .iso and .tbz2 files?</title> |
| 53 |
|
|
<body><p>The build <e>.tbz2</e> file is a minimal set of system files |
| 54 |
|
|
that is necessary for allowing a user to bootstrap and install |
| 55 |
|
|
Gentoo Linux. The build <e>.iso</e> is a complete, bootable CD image that |
| 56 |
|
|
contains a system kernel, a reasonably complete set of kernel modules, |
| 57 |
|
|
necessary system tools such as <c>mkfs</c> and networking support, |
| 58 |
|
|
as well as the <e>.tbz2</e> minimal-system tarball. Most users will install |
| 59 |
|
|
Gentoo Linux by burning the .iso file onto a CD, booting off of the CD, |
| 60 |
|
|
and installing from within the minimal linux environment provided by |
| 61 |
|
|
the Gentoo boot CD. It is possible, however, for users to install |
| 62 |
|
|
Gentoo Linux directly from an already-existing Linux distribution. |
| 63 |
|
|
Such users need only download the .tbz2 file, install the contents |
| 64 |
|
|
on a spare partition (making sure to use the <c>p</c> flag when |
| 65 |
|
|
untarring the tarball!), chroot, and install in the usual fashion.</p> |
| 66 |
|
|
</body> |
| 67 |
|
|
</section> |
| 68 |
|
|
|
| 69 |
|
|
<section> |
| 70 |
|
|
<title>Why do the build .iso and .tbz2 files sometimes have different -r (revision) numbers?</title> |
| 71 |
|
|
<body><p> |
| 72 |
|
|
The .tbz2 minimal-system tarball only needs to be revised when there have |
| 73 |
|
|
been significant changes to the core Gentoo Linux system (such as baselayout |
| 74 |
|
|
changes, or a new profile), and as such .tbz2 updates are relatively rare. |
| 75 |
|
|
The .iso file tends to get updated whenever we discover that somebody has |
| 76 |
|
|
hardware that won't boot from our .iso. Since new kernel modules and |
| 77 |
|
|
patches are constantly being generated, this situation probably won't |
| 78 |
|
|
stabilise anytime soon. |
| 79 |
|
|
</p> |
| 80 |
|
|
</body> |
| 81 |
|
|
</section> |
| 82 |
|
|
|
| 83 |
|
|
<section> |
| 84 |
|
|
<title>I have a Sony Super-Slim VAIO laptop, and the Gentoo Linux CD is having problems |
| 85 |
|
|
finding my PCMCIA ATAPI CD-ROM.</title> |
| 86 |
|
|
<body> |
| 87 |
|
|
<p>Make sure the second IDE port is set to CDROM (it unsets itself if the device isn't |
| 88 |
|
|
attached on boot) then do the following at the isolinux <c>boot:</c> prompt:</p> |
| 89 |
|
|
<pre> |
| 90 |
|
|
boot: <i>rescue ide2=0x180,0x386</i> |
| 91 |
|
|
</pre> |
| 92 |
|
|
<p>If you are using a 1.0_rc5 or earlier boot CD, apart from thinking about downloading the latest iso, |
| 93 |
|
|
type <c>gentoo</c> instead of <c>rescue</c>, above.</p> |
| 94 |
|
|
</body> |
| 95 |
|
|
|
| 96 |
|
|
</section> |
| 97 |
|
|
<section> |
| 98 |
|
|
<title>I'm finding things to be really unstable and I'm using "-O9 -ffast-math |
| 99 |
|
|
-fomit-frame-pointer" optimizations. What gives?</title> |
| 100 |
|
|
<body> |
| 101 |
|
|
<p>When you use any optimizations beyond <c>-O3</c>, you're really taking the risk of |
| 102 |
|
|
having broken packages. |
| 103 |
|
|
Very aggressive optimizations sometimes cause the compiler to streamline the assembly code |
| 104 |
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 |
| 105 |
|
|
is <c>-O3 -mcpu=i686 -march=i686 -fforce-addr -fomit-frame-pointer -funroll-loops |
| 106 |
|
|
-frerun-cse-after-loop -frerun-loop-opt -falign-functions=4</c>, which is about |
| 107 |
drobbins |
1.1 |
as much as I'd want to push global optimization settings. Beyond this, it's best to use |
| 108 |
|
|
ultra-high optimizations only with specific packages where you really need that extra 2%, |
| 109 |
|
|
(eg graphics and various multimedia programs), and where you can easily test the package |
| 110 |
|
|
to ensure that it hasn't been optimized into oblivion.</p> |
| 111 |
zhware |
1.4 |
<p>Please try first to compile with CFLAGS <c>-march= -O2</c> before reporting a bug</p> |
| 112 |
drobbins |
1.1 |
</body> |
| 113 |
|
|
</section> |
| 114 |
|
|
|
| 115 |
|
|
<section> |
| 116 |
|
|
<title>What's the default root password after installation?</title> |
| 117 |
|
|
<body><p>The default password is blank; hit enter.</p></body> |
| 118 |
|
|
</section> |
| 119 |
|
|
|
| 120 |
|
|
<section> |
| 121 |
|
|
<title>How can i change the root (or indeed any other user's) password?</title> |
| 122 |
|
|
<body><p>You can use <c>passwd</c> to change the password for the user you are logged into. |
| 123 |
|
|
for extra options and setting, please see <c>man passwd</c> once you've completed the install. |
| 124 |
|
|
</p></body> |
| 125 |
|
|
</section> |
| 126 |
|
|
<section> |
| 127 |
|
|
<title>How do i add a normal user?</title> |
| 128 |
|
|
<body><p>Everyone seems to think that i shouldn't be using <e>root</e> for everyday use, |
| 129 |
|
|
how can i add another user?</p> |
| 130 |
|
|
<p>The command <c>adduser gentoo</c> will add a user called gentoo. The next step is to give |
| 131 |
|
|
this user a password and <c>passwd</c> will do exactly that.</p> |
| 132 |
zhware |
1.15 |
<p>Insteed of <c>adduser</c> you can also use: |
| 133 |
|
|
<pre># <i>useradd gentoo -m -G users,audio,wheel -s /bin/bash</i></pre> |
| 134 |
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. |
| 135 |
zhware |
1.15 |
</p> |
| 136 |
drobbins |
1.1 |
</body> |
| 137 |
|
|
</section> |
| 138 |
|
|
<section> |
| 139 |
|
|
<title>Why can't a user su to root?</title> |
| 140 |
|
|
<body><p>For security reasons, users may only <c>su</c> to root if they belong to the |
| 141 |
|
|
<e>wheel</e> group. To add a <i>username</i> to the <e>wheel</e> group, issue the following |
| 142 |
|
|
command as root:</p> |
| 143 |
|
|
<pre># <i>usermod -G users,wheel username</i></pre> |
| 144 |
|
|
</body> |
| 145 |
|
|
</section> |
| 146 |
|
|
<section> |
| 147 |
|
|
<title>How do I enable devfs?</title> |
| 148 |
|
|
<body> |
| 149 |
|
|
<p> |
| 150 |
|
|
If you're using 1.0_rc5 or greater, you don't need to do anything special to get |
| 151 |
|
|
devfs working; it's already active (you did make sure that devfs was built into the |
| 152 |
|
|
kernel, didn't you?). |
| 153 |
|
|
However, if you are using a version of Gentoo Linux <e>prior</e> to version 1.0_rc5, add |
| 154 |
|
|
<c>devfs=mount</c> to your <c>GRUB</c> kernel boot options so that the line looks something |
| 155 |
|
|
like <c>kernel /boot/boot/bzImage devfs=mount foo=bar</c> The kernel will then mount the |
| 156 |
|
|
<path>/dev</path> <e>devfs</e> filesystem automatically at boot-time. |
| 157 |
|
|
</p> |
| 158 |
|
|
</body> |
| 159 |
|
|
</section> |
| 160 |
|
|
<section> |
| 161 |
|
|
<title>How to I disable devfs?</title> |
| 162 |
|
|
<body> |
| 163 |
|
|
<p>Under Gentoo Linux 1.0_rc6 and later, you can disable devfs by passing the |
| 164 |
|
|
<c>gentoo=nodevfs</c> to the kernel.</p> |
| 165 |
|
|
</body> |
| 166 |
|
|
</section> |
| 167 |
|
|
<section> |
| 168 |
|
|
<title>How do I get a <path>/dev/mouse </path> that |
| 169 |
|
|
doesn't go away when I reboot (when using devfs)?</title> |
| 170 |
|
|
<body> |
| 171 |
|
|
<p> |
| 172 |
|
|
If you are using 1.0_rc6 or later, then you can just use <c>ln -s</c> |
| 173 |
|
|
to make the usual symbolic link from <path>/dev/mouse</path>, and |
| 174 |
|
|
it will be preserved between reboots. |
| 175 |
|
|
</p> |
| 176 |
|
|
<p>All other users need to edit <path>/etc/devfsd.conf</path> |
| 177 |
|
|
and add these lines:</p> |
| 178 |
|
|
<pre> |
| 179 |
|
|
REGISTER ^misc/psaux$ CFUNCTION GLOBAL symlink misc/psaux mouse |
| 180 |
|
|
UNREGISTER ^misc/psaux$ CFUNCTION GLOBAL unlink mouse |
| 181 |
|
|
</pre> |
| 182 |
|
|
<p>If you are not using the devfs PS/2 mouse <path>/dev/misc/psaux</path> device, |
| 183 |
|
|
adjust the <c>misc/psaux</c> strings above accoringly. You'll then want to |
| 184 |
|
|
<c>killall -HUP devfsd</c> |
| 185 |
|
|
to get devfsd to reread <path>/etc/devfsd.conf</path>.</p> |
| 186 |
|
|
</body> |
| 187 |
|
|
</section> |
| 188 |
|
|
<section> |
| 189 |
|
|
<title>Grub can't find stage x.y?</title> |
| 190 |
|
|
<body><p> |
| 191 |
|
|
During installation the grub boot files are copied |
| 192 |
|
|
to <path>/boot/grub</path> (<path>/boot/boot/grub</path> in Gentoo Linux 1.0_rc5 and |
| 193 |
|
|
earlier.) Grub automatically looks in the <path>/boot/grub</path> directory on the boot |
| 194 |
|
|
partition. (We strongly recommend having a separate no-auto boot partition mounted at |
| 195 |
|
|
<path>/boot</path>, since that way it is much more difficult to clobber your kernel and boot |
| 196 |
|
|
info by accident.) The above error generally arises from (a) not using a separate boot |
| 197 |
|
|
partition, (b) forgetting to mount the boot partition at <path>/boot</path> before either |
| 198 |
|
|
unpacking the build snapshot or running |
| 199 |
|
|
<c>emerge --usepkg system</c>, or (c) forgetting the |
| 200 |
|
|
<c>notail</c> option when mounting a ReiserFS <path>/boot</path> partition. |
| 201 |
|
|
You can get more information on grub, including how to |
| 202 |
|
|
debug grub from the grub prompt, by reading the |
| 203 |
|
|
<uri link="http://www-105.ibm.com/developerworks/education.nsf/linux-onlinecourse-bytitle/0F1731DC664023B7862569D0005C44AF?OpenDocument">IBM developerWorks Grub tutorial</uri>. |
| 204 |
|
|
</p> |
| 205 |
|
|
</body> |
| 206 |
|
|
</section> |
| 207 |
|
|
|
| 208 |
|
|
<section> |
| 209 |
|
|
<title>My ASUS CUV4X-D won't boot and it freezes during various stages of kernel loading and hardware |
| 210 |
|
|
detection. </title> |
| 211 |
|
|
<body> |
| 212 |
|
|
<p>Disable MPS 1.4 (multi-processor-system) in the BIOS or switch this |
| 213 |
|
|
function to 1.1. By using this option you just switch the MPS version. The Multi-Processor-System |
| 214 |
|
|
will still work properly. Make sure to boot Gentoo Linux with the following boot option, noapic. </p> |
| 215 |
|
|
</body> |
| 216 |
|
|
</section> |
| 217 |
|
|
|
| 218 |
zhware |
1.19 |
<section> |
| 219 |
|
|
<title>If I have Gentoo 1.4_rc1 can I upgrade to 1.4_rc2, 1.4_final/_rc3 without reinstalling?</title> |
| 220 |
|
|
<body> |
| 221 |
|
|
In fact there is no difference between the 1.4 releases <b>after they've installed</b>. Gentoo 1.4 and later are <c>glibc-2.3.x</c> based. |
| 222 |
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. |
| 223 |
zhware |
1.19 |
</body> |
| 224 |
|
|
</section> |
| 225 |
drobbins |
1.1 |
</chapter> |
| 226 |
|
|
|
| 227 |
|
|
<chapter> |
| 228 |
|
|
<title>Package Management</title> |
| 229 |
|
|
<section> |
| 230 |
|
|
<title>In what format are the packages stored?</title> |
| 231 |
|
|
<body><p>They exist in our portage tree as <e>ebuild</e> autobuild scripts; we are primarily |
| 232 |
|
|
a ports-based distribution, meaning that we provide scripts (<c>.ebuild</c> files) and a |
| 233 |
|
|
special system (Portage) so that you can build apps from sources. We generally only build |
| 234 |
swift |
1.22 |
binaries for releases and snapshots. The <uri link="/doc/en/gentoo-howto.xml">Development HOWTO |
| 235 |
drobbins |
1.1 |
</uri> covers the contents of an ebuild script in detail. For full binary ISO releases, we |
| 236 |
|
|
create a full suite of binary packages in an enhanced <c>.tbz2</c> format (<c>.tar.bz2</c> |
| 237 |
|
|
compatible with meta-information attached to the end of the file.)</p> |
| 238 |
|
|
</body> |
| 239 |
|
|
</section> |
| 240 |
|
|
|
| 241 |
|
|
<section> |
| 242 |
|
|
<title>Why write a new port system (Portage) instead of using BSD's version?</title> |
| 243 |
|
|
<body> |
| 244 |
|
|
<p>In one sentence, because Portage is much better in so many ways. One of the design |
| 245 |
|
|
philosophies of the <c>.ebuild</c> syntax was to make it an analog of what you'd type to |
| 246 |
|
|
install the program manually, thus making Portage very easy to learn and modify to your |
| 247 |
|
|
needs. We also have OpenBSD-style "fake" installs, safe unmerging, system profiles, |
| 248 |
|
|
package masking, a real dependency system, and lots of other good stuff.</p> |
| 249 |
|
|
</body> |
| 250 |
|
|
</section> |
| 251 |
|
|
|
| 252 |
|
|
<section> |
| 253 |
|
|
<title>How does this differ from Debian's apt or BSD's ports?</title> |
| 254 |
|
|
<body><p>Portage features the best of apt and ports; for example, USE options, a full |
| 255 |
|
|
dependency system, safe installs and uninstalls, and a true package database. Think of |
| 256 |
|
|
Portage as the best of both worlds; a ports system with the sensibilities and safety of a |
| 257 |
|
|
Linux package management system built-in.</p></body> |
| 258 |
|
|
</section> |
| 259 |
|
|
|
| 260 |
|
|
<section> |
| 261 |
|
|
<title>How do I install and uninstall packages?</title> |
| 262 |
|
|
<body> |
| 263 |
swift |
1.22 |
<p>The <uri link="/doc/en/portage-user.xml">Portage User Guide</uri> details how to install |
| 264 |
drobbins |
1.1 |
and uninstall packages, and update Portage.</p> |
| 265 |
|
|
</body> |
| 266 |
|
|
</section> |
| 267 |
|
|
|
| 268 |
|
|
<section> |
| 269 |
|
|
<title>How can I set a global configuration for compiling packages?</title> |
| 270 |
|
|
<body><p><path>/etc/make.conf</path> should be modified to override global and |
| 271 |
|
|
profile-specific default options used to compile and merge packages. The most common options |
| 272 |
|
|
are as follows:</p> |
| 273 |
|
|
<table> |
| 274 |
|
|
<tr> |
| 275 |
|
|
<th>Flag</th> |
| 276 |
|
|
<th>Description</th> |
| 277 |
|
|
</tr> |
| 278 |
|
|
<tr> |
| 279 |
|
|
<ti>CHOST</ti> |
| 280 |
|
|
<ti>This sets the HOST variable for compiles, e.g. <c>i686-pc-linux-gnu</c></ti> |
| 281 |
|
|
</tr> |
| 282 |
|
|
<tr> |
| 283 |
|
|
<ti>CFLAGS</ti> |
| 284 |
|
|
<ti>The options for <c>gcc</c> when compiling programs written in C (*.c files)</ti> |
| 285 |
|
|
</tr> |
| 286 |
|
|
<tr> |
| 287 |
|
|
<ti>CXXFLAGS</ti> |
| 288 |
|
|
<ti>The options for <c>gcc</c> when compiling programs written in C++ (*.c,*.cpp etc. |
| 289 |
|
|
files)</ti> |
| 290 |
|
|
</tr> |
| 291 |
|
|
<tr> |
| 292 |
|
|
<ti>USE</ti> |
| 293 |
|
|
<ti>This allows you to set what optional components you'd like compiled-in, if |
| 294 |
|
|
available. For example, if you have <c>gnome</c> inside the USE string, then when |
| 295 |
|
|
you compile <c>xchat</c>, it will include GNOME support. All our dependencies are |
| 296 |
|
|
also USE-aware.</ti> |
| 297 |
|
|
</tr> |
| 298 |
|
|
<tr> |
| 299 |
|
|
<ti>GENTOO_MIRRORS</ti> |
| 300 |
|
|
<ti>A space separated list of URIs currently mirroring the Gentoo packages. Portage |
| 301 |
|
|
will attempt download from a <c>GENTOO_MIRROR</c> first before trying the official |
| 302 |
|
|
<c>SRC_URI</c>. To force Portage to skip mirrors, set this variable to "".</ti> |
| 303 |
|
|
</tr> |
| 304 |
|
|
</table> |
| 305 |
|
|
</body> |
| 306 |
|
|
</section> |
| 307 |
|
|
|
| 308 |
|
|
<section> |
| 309 |
|
|
<title>What happened to <path>/etc/make.defaults</path>?</title> |
| 310 |
|
|
<body> |
| 311 |
|
|
<p>As of Portage 1.5 onwards, <path>/etc/make.defaults</path> is antiquated; |
| 312 |
|
|
if you have portage-1.5-r1 or above installed then you can safely delete it. |
| 313 |
|
|
This file has been replaced by <path>/etc/make.profile/make.defaults</path> |
| 314 |
|
|
(<path>/etc/make.profile</path> should actually be a symlink to, |
| 315 |
|
|
<path>/usr/portage/profiles/default</path>), |
| 316 |
|
|
which contains system profile-specific default settings. The priority order of |
| 317 |
|
|
the various configuration files is as follows (highest first): |
| 318 |
|
|
<ol> |
| 319 |
|
|
<li>Environment variables</li> |
| 320 |
|
|
<li><path>/etc/make.conf</path>, for your use</li> |
| 321 |
|
|
<li><path>/etc/make.profile/make.defaults</path>, for profile-specific defaults</li> |
| 322 |
|
|
<li><path>/etc/make.globals</path>, for global defaults (settings not specified in |
| 323 |
|
|
any other place come from here)</li> |
| 324 |
|
|
</ol></p></body> |
| 325 |
|
|
</section> |
| 326 |
|
|
|
| 327 |
|
|
<section> |
| 328 |
|
|
<title>Is there a way to upgrade all installed packages |
| 329 |
|
|
e.g. <e>apt-get upgrade</e> or <e>make World</e>?</title> |
| 330 |
|
|
<body><p><b>YES!</b> Type <c>emerge --update system</c> (use it with <c>--pretend</c> first) to |
| 331 |
|
|
update all core system packages, and use <c>emerge --update world</c> (again, use it with |
| 332 |
|
|
<c>--pretend</c> first) to do a complete system upgrade of all installed packages. |
| 333 |
|
|
|
| 334 |
|
|
|
| 335 |
|
|
</p></body> |
| 336 |
|
|
</section> |
| 337 |
|
|
|
| 338 |
|
|
<section> |
| 339 |
|
|
<title>When updating a package using <c>emerge</c> or <c>ebuild</c>, how do I avoid |
| 340 |
|
|
clobbering my config files?</title> |
| 341 |
|
|
<body><p> |
| 342 |
|
|
Portage now includes config file management support by default. Type |
| 343 |
|
|
<c>emerge --help config</c> for more details. The (overly) simple answer is that if |
| 344 |
|
|
a package installs <path>foo</path> somewhere under <path>/etc</path>, and |
| 345 |
|
|
another <path>foo</path> already exists there, then the new <path>foo</path> will |
| 346 |
|
|
instead be renamed to <path>._cfgxxxx_foo</path> in that directory. A useful |
| 347 |
|
|
tool for examining and updating any protected config files is <c>etc-update</c>, |
| 348 |
swift |
1.27 |
which is now part of Portage. |
| 349 |
drobbins |
1.1 |
</p></body> |
| 350 |
|
|
</section> |
| 351 |
|
|
|
| 352 |
|
|
<section> |
| 353 |
|
|
<title>I want to perform the <c>./configure</c> step myself. Can I?</title> |
| 354 |
|
|
<body><p> |
| 355 |
|
|
Yes, but it is not trivial. First do <c>man ebuild</c> followed by |
| 356 |
|
|
<c>ebuild foo-x.y.z.ebuild unpack</c>. Then <c>cd</c> to |
| 357 |
|
|
<path>/var/tmp/portage/foo-x.y.z/work</path>. You can manually perform |
| 358 |
|
|
the <c>./configure</c> and <c>make</c> steps yourself (you'll have to do |
| 359 |
|
|
both, since Portage does not separate the configure and build steps). To |
| 360 |
|
|
have Portage finish the installation (so that you can easily remove it later, |
| 361 |
|
|
should you desire to do so, and it will be registered in Portage as a possible |
| 362 |
|
|
dependency) you first need to <c>touch /var/tmp/portage/foo-x.y.z/.compiled</c> |
| 363 |
|
|
(tricking Portage into thinking that <c>ebuild foo-x.y.z.ebuild compile</c> has |
| 364 |
|
|
completed), followed by <c>ebuild foo-x.y.z.ebuild merge</c>. |
| 365 |
|
|
</p></body> |
| 366 |
|
|
</section> |
| 367 |
|
|
|
| 368 |
|
|
<section> |
| 369 |
|
|
<title>What if rsync doesn't work for me?</title> |
| 370 |
|
|
<body><p> |
| 371 |
|
|
If you're behind a firewall that doesn't permit |
| 372 |
swift |
1.29 |
rsync traffic, then you can use <c>emerge-webrsync</c> which will fetch |
| 373 |
|
|
and install a Portage snapshot for you through regular HTTP. |
| 374 |
|
|
<c>emerge-webrsync</c> uses <c>wget</c> to download, so proxy is fully |
| 375 |
|
|
supported. |
| 376 |
|
|
<pre caption="Using emerge-webrsync"> |
| 377 |
|
|
~# <c>emerge-webrsync</c></pre> |
| 378 |
|
|
If you cannot do this either, you can manually download a snapshot |
| 379 |
|
|
from <uri>http://distro.ibiblio.org/pub/linux/distributions/gentoo/snapshots/</uri>. |
| 380 |
|
|
In order to install the snapshot correctly, you first need to remove |
| 381 |
|
|
your current <path>/usr/portage</path> so that outdated ebuilds don't |
| 382 |
|
|
stay available on your system. However, you might want to put |
| 383 |
|
|
<path>/usr/portage/distfiles</path> somewhere safe if you don't want to |
| 384 |
|
|
lose all your sourcecode. |
| 385 |
|
|
<pre caption="Manually installing the snapshots"> |
| 386 |
|
|
<codenote>(First download the snapshot and place it in /usr)</codenote> |
| 387 |
|
|
~# <c>cd /usr</c> |
| 388 |
|
|
~# <c>mv /usr/portage/distfiles /usr/distfiles-temp</c> |
| 389 |
|
|
~# <c>rm -rf /usr/portage</c> |
| 390 |
|
|
~# <c>tar xvjf portage-foo.tbz2</c> |
| 391 |
|
|
~# <c>mv /usr/distfiles-temp /usr/portage/distfiles</c></pre> |
| 392 |
drobbins |
1.1 |
</p></body> |
| 393 |
|
|
</section> |
| 394 |
|
|
|
| 395 |
|
|
<section> |
| 396 |
|
|
<title>How do I use <i>emerge</i> from behind a firewall?</title> |
| 397 |
|
|
<body><p> |
| 398 |
|
|
Edit the PROXY settings in <path>/etc/make.conf</path>. If that doesn't work, |
| 399 |
|
|
edit <path>/etc/wget/wgetrc</path> and edit http_proxy and ftp_proxy |
| 400 |
|
|
appropriately. |
| 401 |
|
|
</p></body> |
| 402 |
|
|
</section> |
| 403 |
|
|
|
| 404 |
|
|
<section> |
| 405 |
|
|
<title>Can I rsync from another operating system?</title> |
| 406 |
|
|
<body><p>There's a program called unison that works under both UNIX and Win32, available from |
| 407 |
|
|
<uri>http://www.cis.upenn.edu/~bcpierce/unison/</uri>.</p></body> |
| 408 |
|
|
</section> |
| 409 |
|
|
|
| 410 |
|
|
<section> |
| 411 |
|
|
<title>I have only slow modem connection at home. Can I download sources somewhere else and |
| 412 |
|
|
add them to my system?</title> |
| 413 |
|
|
<body><p> |
| 414 |
|
|
Definitely. You can run <c>emerge --pretend package</c> to see what programs |
| 415 |
peesh |
1.24 |
are going to be installed. To find out the sources for those packages and where to |
| 416 |
|
|
download the sources from, you can run <c>emerge -fp package</c>. |
| 417 |
|
|
Download sources and bring them on any media |
| 418 |
drobbins |
1.1 |
home. Put the sources into <path>/usr/portage/distfiles</path> and run |
| 419 |
|
|
<c>emerge package</c> to see it picking up the sources you just brought in! |
| 420 |
|
|
</p></body> |
| 421 |
|
|
</section> |
| 422 |
|
|
|
| 423 |
|
|
<section> |
| 424 |
|
|
<title>.tar.gz sources for installed software are piling up in /usr/portage/distfiles/ using |
| 425 |
|
|
valuable space. Is it safe to delete these files?</title> |
| 426 |
|
|
<body><p> |
| 427 |
|
|
Yes, you can safely delete these files. But if you are on a slow |
| 428 |
|
|
connection, such as a modem, you might want to keep the archives if |
| 429 |
|
|
possible; often several ebuilds will be released for the same version of |
| 430 |
|
|
a specific piece of software - if you have deleted the archive and you |
| 431 |
|
|
upgrade the software it will have to be downloaded from the internet |
| 432 |
|
|
again. |
| 433 |
|
|
</p></body> |
| 434 |
zhen |
1.5 |
</section> |
| 435 |
|
|
|
| 436 |
|
|
<section> |
| 437 |
|
|
<title>I went to emerge blackdown-jdk and blackdown-jre, and afterwards |
| 438 |
|
|
<c>java-config --list-available-vms</c> would only list blackdown-jre. |
| 439 |
|
|
Openoffice would then refuse to emerge. What do I do? </title> |
| 440 |
|
|
|
| 441 |
|
|
<body> |
| 442 |
|
|
<p>Solution: </p> |
| 443 |
|
|
<pre caption = "Solution"> |
| 444 |
|
|
# <c>emerge unmerge blackdown-jre blackdown-jdk </c> |
| 445 |
|
|
# <c>CONFIG_PROTECT="" emerge blackdown-jdk </c> |
| 446 |
|
|
</pre> |
| 447 |
|
|
|
| 448 |
drobbins |
1.1 |
</body> |
| 449 |
|
|
</section> |
| 450 |
zhware |
1.18 |
<section> |
| 451 |
|
|
<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> |
| 452 |
|
|
<body> |
| 453 |
|
|
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. |
| 454 |
|
|
</body> |
| 455 |
|
|
</section> |
| 456 |
drobbins |
1.1 |
</chapter> |
| 457 |
|
|
|
| 458 |
|
|
<chapter> |
| 459 |
|
|
<title>Usage</title> |
| 460 |
|
|
<section> |
| 461 |
|
|
<title>I have installed openssh on my box, but can only log in as root - my normal user |
| 462 |
|
|
account doesn't work. </title> |
| 463 |
|
|
<body> |
| 464 |
|
|
<p> |
| 465 |
|
|
This is most probably because your user account doesn't have a valid shell specified. Check |
| 466 |
|
|
for your user entry in |
| 467 |
|
|
<path>/etc/passwd</path> and see if it ends in /bin/bash (or any other shell). If it doesn't, |
| 468 |
|
|
you must set a shell for the user. This is done using the usermod command, like this ; |
| 469 |
|
|
</p> |
| 470 |
|
|
<pre># <i>usermod -s /bin/bash myuser</i></pre> |
| 471 |
|
|
</body> |
| 472 |
|
|
</section> |
| 473 |
|
|
|
| 474 |
|
|
<section> |
| 475 |
|
|
<title>I can start X applications as root only.</title> |
| 476 |
|
|
<body><p>Your <path>/tmp</path> directory has the wrong permissions (it needs the sticky bit |
| 477 |
|
|
set). Type the following as root:</p> |
| 478 |
|
|
<pre># <i>chmod 1777 /tmp</i></pre> |
| 479 |
|
|
</body> |
| 480 |
|
|
</section> |
| 481 |
|
|
|
| 482 |
|
|
<section> |
| 483 |
|
|
<title>How do I set up an International Keyboard Layout?</title> |
| 484 |
|
|
<body><p>Edit the <c>KEYMAP</c> variable in <path>/etc/rc.conf</path>. |
| 485 |
|
|
Then either reboot or restart the keymaps script: |
| 486 |
|
|
<c>/etc/init.d/keymaps restart</c>.</p> |
| 487 |
|
|
</body> |
| 488 |
|
|
</section> |
| 489 |
|
|
|
| 490 |
|
|
<section> |
| 491 |
|
|
<title>DNS name resolution works for root only.</title> |
| 492 |
|
|
<body><p><path>/etc/resolv.conf</path> has the wrong permissions; <c>chmod</c> it as follows: |
| 493 |
|
|
</p> |
| 494 |
|
|
<pre># <i>chmod 0644 /etc/resolv.conf</i></pre> |
| 495 |
|
|
</body> |
| 496 |
|
|
</section> |
| 497 |
|
|
|
| 498 |
|
|
<section> |
| 499 |
|
|
<title>Why is KDE not reading <path>/etc/profile</path>?</title> |
| 500 |
|
|
<body><p>You need to add <c>--login</c> to the first line in <path>/opt/kde2.1/bin/startkde |
| 501 |
|
|
</path>, so that it reads as follows:</p> |
| 502 |
|
|
<pre>#!/bin/sh --login</pre> |
| 503 |
|
|
<p>This fix has been added to recent versions of KDE.</p> |
| 504 |
zhen |
1.17 |
</body> |
| 505 |
|
|
</section> |
| 506 |
|
|
|
| 507 |
|
|
<section> |
| 508 |
|
|
<title>Why can't my user use their own crontab?</title> |
| 509 |
|
|
<body><p>You need to add that user to the <i>cron</i> group. |
| 510 |
|
|
</p> |
| 511 |
drobbins |
1.1 |
</body> |
| 512 |
|
|
</section> |
| 513 |
|
|
</chapter> |
| 514 |
|
|
|
| 515 |
|
|
<chapter> |
| 516 |
|
|
<title>Maintenance</title> |
| 517 |
|
|
<section> |
| 518 |
|
|
<title>ReiserFS and filesystem corruption issues -- how to fix'em, etc</title> |
| 519 |
|
|
<body> |
| 520 |
|
|
<p> |
| 521 |
|
|
If your |
| 522 |
|
|
ReiserFS partition is corrupt, try booting the Gentoo |
| 523 |
|
|
Linux boot CD and run <c>reiserfsck --rebuild-tree</c> on |
| 524 |
|
|
the corrupted filesystem. This should make the filesystem consistent |
| 525 |
|
|
again, although you may have lost some files or directories due |
| 526 |
|
|
to the corruption. |
| 527 |
|
|
</p> |
| 528 |
|
|
</body> |
| 529 |
|
|
</section> |
| 530 |
|
|
<!-- is this still relevant? -cpm --> |
| 531 |
|
|
<section> |
| 532 |
|
|
<title>How to I view the timestamps in /var/log/syslog.d, etc. on a pre-1.0_rc5 Gentoo |
| 533 |
|
|
system?</title> |
| 534 |
|
|
<body> |
| 535 |
|
|
<p>To view multilog (Gentoo Linux 1.0_rc5 and earlier) timestamps, you need to pipe the |
| 536 |
|
|
current log through the <c>tai64nlocal</c>command:</p> |
| 537 |
|
|
|
| 538 |
|
|
<pre> |
| 539 |
seo |
1.14 |
# <i>tai64nlocal < /var/log/syslog.d/current | less</i> |
| 540 |
drobbins |
1.1 |
</pre> |
| 541 |
|
|
|
| 542 |
|
|
<p>Or, alternatively, if you want to "tail" the log:</p> |
| 543 |
|
|
|
| 544 |
|
|
<pre> |
| 545 |
|
|
# <i>tail -f /var/log/syslog.d/current | tai64nlocal</i> |
| 546 |
|
|
</pre> |
| 547 |
|
|
|
| 548 |
|
|
</body> |
| 549 |
|
|
</section> |
| 550 |
|
|
</chapter> |
| 551 |
|
|
|
| 552 |
|
|
<chapter> |
| 553 |
|
|
<title>Development</title> |
| 554 |
|
|
<section> |
| 555 |
|
|
<title>Where can I report bugs?</title> |
| 556 |
|
|
<body><p>For bugs within a specific program, contact the program's author. Otherwise, use our |
| 557 |
|
|
Bugzilla bug tracker at <uri>http://bugs.gentoo.org</uri>. You can also visit us in |
| 558 |
swift |
1.27 |
<c>#gentoo</c> on the <uri link="http://www.freenode.net">FreeNode</uri> IRC network. |
| 559 |
drobbins |
1.1 |
</p></body> |
| 560 |
|
|
</section> |
| 561 |
|
|
|
| 562 |
|
|
<section> |
| 563 |
|
|
<title>How often are new releases made?</title> |
| 564 |
zhen |
1.13 |
<body><p>New releases are announced on the <uri link="http://www.gentoo.org/main/en/lists.xml">gentoo-announce</uri> |
| 565 |
drobbins |
1.1 |
mailing list<!-- TODO: approximatley every X months -->, In reality the packages themselves |
| 566 |
|
|
are updated shortly after the main authors release new code. As for when new Cd images etc |
| 567 |
|
|
are released, that tends to be whenever there are any major updates to the base code, or when |
| 568 |
|
|
new modules get added.</p></body> |
| 569 |
|
|
</section> |
| 570 |
|
|
|
| 571 |
|
|
<section> |
| 572 |
|
|
<title>I would like a package to be added to Portage; how would I go about this?</title> |
| 573 |
|
|
<body><p>Head over to <uri>http://bugs.gentoo.org</uri> and submit a new bug of the type |
| 574 |
|
|
"ebuild". Attach your ebuild to the bug report.</p></body> |
| 575 |
|
|
</section> |
| 576 |
|
|
|
| 577 |
|
|
<section> |
| 578 |
|
|
<title>How can I add a question or answer to this FAQ?</title> |
| 579 |
|
|
<body><p>Submit a new bug over at <uri>http://bugs.gentoo.org</uri> and add it to the |
| 580 |
swift |
1.28 |
"Docs-user" product, "Gentoo Linux FAQ" component.</p></body> |
| 581 |
drobbins |
1.1 |
</section> |
| 582 |
|
|
|
| 583 |
|
|
<section> |
| 584 |
|
|
<title>make -f Makefile.cvs on a KDE app produces "invalid unused variable" errors</title> |
| 585 |
|
|
<body><p> |
| 586 |
|
|
Export <c>WANT_AUTOMAKE_1_4=1</c> for all KDE projects before running |
| 587 |
|
|
<c>make -f Makefile.cvs</c>. Also, for KDE2 apps export <c>WANT_AUTOCONF_2_1=1</c>, |
| 588 |
|
|
and for KDE3 apps export <c>WANT_AUTOCONF_2_5=1</c>. |
| 589 |
|
|
</p></body> |
| 590 |
|
|
</section> |
| 591 |
|
|
|
| 592 |
|
|
|
| 593 |
|
|
<section> |
| 594 |
|
|
<title>My speaker beeps like crazy while compiling Mozilla. How do I disable console beeps? |
| 595 |
|
|
</title> |
| 596 |
|
|
<body> |
| 597 |
|
|
<p> |
| 598 |
|
|
Console beeps can be turned off using setterm, like this ; |
| 599 |
|
|
|
| 600 |
|
|
<pre># <i>setterm -blength 0</i></pre> |
| 601 |
|
|
|
| 602 |
|
|
If you would like to turn off the console beeps on boot |
| 603 |
|
|
you need to put this command in |
| 604 |
|
|
<path>/etc/conf.d/local.start</path>. However, this only |
| 605 |
|
|
disables beeps for the current terminal. To disable |
| 606 |
|
|
beeps for other terminals, pipe the command output to the |
| 607 |
|
|
target terminal, like this ; |
| 608 |
|
|
|
| 609 |
|
|
<pre># <i>setterm -blength 0 >/dev/vc/1</i></pre> |
| 610 |
|
|
|
| 611 |
|
|
You need to replace /dev/vc/1 with the terminal |
| 612 |
|
|
you would like to disable console beeps for. |
| 613 |
|
|
</p> |
| 614 |
|
|
</body> |
| 615 |
|
|
</section> |
| 616 |
|
|
</chapter> |
| 617 |
|
|
|
| 618 |
|
|
<chapter> |
| 619 |
|
|
<title>Resources</title> |
| 620 |
|
|
<section> |
| 621 |
|
|
<title>Where can I find more about supervise used by default in Gentoo Linux 1.0_rc5 and earlier?</title> |
| 622 |
|
|
<body><p><!-- TODO: --><uri>http://cr.yp.to/daemontools.html</uri></p></body> |
| 623 |
|
|
</section> |
| 624 |
|
|
|
| 625 |
|
|
<section> |
| 626 |
|
|
<title>Where can I find more information about Gentoo Linux?</title> |
| 627 |
|
|
<body><p>The official Gentoo documentation can be found on <uri>http://www.gentoo.org</uri>; general Linux information is at <uri>http://www.linuxdoc.org</uri>.</p></body> |
| 628 |
|
|
</section> |
| 629 |
|
|
|
| 630 |
|
|
<section> |
| 631 |
|
|
<title>Can I buy a CD of Gentoo Linux?</title> |
| 632 |
|
|
<body><p>Yes! Fresh CDRs are available for $5 USD apiece from |
| 633 |
|
|
<uri link = "http://cart.cheapbytes.com/cgi-bin/cart/0070010805">Cheapbytes</uri>. |
| 634 |
|
|
</p> |
| 635 |
|
|
<p>There are also CDs for sale at <uri link = "http://www.tuxcds.com/section.php?section=42"> |
| 636 |
|
|
tuxcds</uri> for a very good price. These people also bounce back a portion of the profits |
| 637 |
|
|
to the Gentoo project, so buy them while they are hot! </p> |
| 638 |
|
|
</body> |
| 639 |
|
|
</section> |
| 640 |
|
|
|
| 641 |
|
|
<section> |
| 642 |
|
|
<title>Why, when I hit reply to a post on a Gentoo mailing list, does my answer |
| 643 |
|
|
only go to the original poster and not the entire list?</title> |
| 644 |
|
|
<body> |
| 645 |
|
|
<p>The mailing list administrators have decided to go with minimal munging |
| 646 |
|
|
(altering of mail headers), which means that they have decided against |
| 647 |
|
|
altering headers to have replies go to the mailing list. There are various |
| 648 |
|
|
reasons for this. For example, if a subscriber has a full mailbox, the |
| 649 |
|
|
entire list receives notice of this every time that something is posted. |
| 650 |
|
|
|
| 651 |
|
|
Most GUI based mailers have a "reply to all" function. This will ensure that |
| 652 |
|
|
your reply goes to the mailing list as well as the original poster. Most |
| 653 |
|
|
users of text based emailers already know the methods to use, but if you |
| 654 |
|
|
don't, in Pine, there is a "reply to group" option. Setting Mutt to reply to |
| 655 |
|
|
the list is covered in the unofficial documentation at |
| 656 |
|
|
<uri link="http://forums.gentoo.org/viewtopic.php?t=1085">forums.gentoo.org</uri>. |
| 657 |
|
|
|
| 658 |
|
|
Some list members do not like this method, but it was very heavily |
| 659 |
|
|
discussed when it went into effect, with arguments on both sides. |
| 660 |
|
|
Eventually the list administrators decided to keep it this way. Discussing |
| 661 |
|
|
it on the mailing list will sometimes bring a polite explanation and other |
| 662 |
|
|
times a rather brusque comment to check the archives. Although the |
| 663 |
|
|
administrators regret the inconvenience that it may cause some users, it is |
| 664 |
|
|
felt that at present it is preferable to the alternative for several |
| 665 |
|
|
reasons, many of these covered |
| 666 |
|
|
<uri link="http://www.unicom.com/pw/reply-to-harmful.html">here</uri>. |
| 667 |
|
|
|
| 668 |
|
|
(There are other eloquent arguments in favor of munging, and yes, the list |
| 669 |
|
|
administrators have seen them.) </p> |
| 670 |
|
|
</body> |
| 671 |
|
|
</section> |
| 672 |
|
|
|
| 673 |
|
|
<section> |
| 674 |
|
|
<title>This FAQ hasn't answered my question. What do I do now?</title> |
| 675 |
|
|
<body> |
| 676 |
zhen |
1.23 |
<p>A good first step is to browse through the relevant doumentation <uri link="http://www.gentoo.org/main/en/docs.xml">here</uri>, |
| 677 |
drobbins |
1.1 |
failing that, the various Gentoo Linux mailing |
| 678 |
zhen |
1.23 |
lists listed on <uri link="http://www.google.com">Google</uri>. To search through the Gentoo mailling lists, |
| 679 |
|
|
just enter "lists.gentoo.org foo" to search for "foo". If all else fails, or you just want |
| 680 |
drobbins |
1.1 |
to hang out with Gentoo folks, visit us on irc: <i>#gentoo</i> |
| 681 |
|
|
on <i>irc.freenode.net</i>. |
| 682 |
|
|
</p> |
| 683 |
|
|
</body> |
| 684 |
|
|
</section> |
| 685 |
|
|
</chapter> |
| 686 |
|
|
</guide> |