/[gentoo]/xml/htdocs/doc/en/handbook/hb-install-config.xml
Gentoo

Diff of /xml/htdocs/doc/en/handbook/hb-install-config.xml

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

Revision 1.9 Revision 1.62
1<?xml version='1.0' encoding='UTF-8'?>
2<!DOCTYPE sections SYSTEM "/dtd/book.dtd">
3
1<!-- The content of this document is licensed under the CC-BY-SA license --> 4<!-- The content of this document is licensed under the CC-BY-SA license -->
2<!-- See http://creativecommons.org/licenses/by-sa/1.0 --> 5<!-- See http://creativecommons.org/licenses/by-sa/1.0 -->
3 6
4<!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/en/handbook/hb-install-config.xml,v 1.9 2003/11/20 18:01:04 swift Exp $ --> 7<!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/en/handbook/hb-install-config.xml,v 1.62 2005/06/09 07:16:39 swift Exp $ -->
5 8
6<sections> 9<sections>
7<section>
8<title>Timezone</title>
9<body>
10 10
11<p> 11<version>2.4</version>
12You now need to select your timezone so that your system knows where it is 12<date>2005-06-09</date>
13located. Look for your timezone in <path>/usr/share/zoneinfo</path>, then make a
14symlink to <path>/etc/localtime</path> using <c>ln</c>:
15</p>
16 13
17<pre caption="Setting the timezone information">
18# <i>ls /usr/share/zoneinfo</i>
19<comment>(Suppose you want to use GTM:)</comment>
20# <i>ln -sf /usr/share/zoneinfo/GMT /etc/localtime</i>
21</pre>
22
23</body>
24</section>
25<section> 14<section>
26<title>Filesystem Information</title> 15<title>Filesystem Information</title>
27<subsection> 16<subsection>
28<title>What is fstab?</title> 17<title>What is fstab?</title>
29<body> 18<body>
30 19
31<p> 20<p>
32Under Linux, all partitions used by the system must be listed in 21Under Linux, all partitions used by the system must be listed in
33<path>/etc/fstab</path>. This file contains the mountpoints of those partitions 22<path>/etc/fstab</path>. This file contains the mountpoints of those partitions
34(where they are seen in the file system structure), how they should be mounted 23(where they are seen in the file system structure), how they should be mounted
35(special options) and when (automatically or not, can users mount those or not, 24and with what special options (automatically or not, whether users can mount
36etc.). 25them or not, etc.)
37</p> 26</p>
38 27
39</body> 28</body>
40</subsection> 29</subsection>
41<subsection> 30<subsection>
42<title>Creating /etc/fstab</title> 31<title>Creating /etc/fstab</title>
43<body> 32<body>
44 33
45<p> 34<p>
46<path>/etc/fstab</path> uses a special syntaxis. Every line consists of six 35<path>/etc/fstab</path> uses a special syntax. Every line consists of six
47fields, separated by whitespace (space(s), tabs or a mixture). Each field has 36fields, separated by whitespace (space(s), tabs or a mixture). Each field has
48its own meaning: 37its own meaning:
49</p> 38</p>
50 39
51<ul> 40<ul>
61 The third field shows the <b>filesystem</b> used by the partition 50 The third field shows the <b>filesystem</b> used by the partition
62</li> 51</li>
63<li> 52<li>
64 The fourth field shows the <b>mountoptions</b> used by <c>mount</c> when it 53 The fourth field shows the <b>mountoptions</b> used by <c>mount</c> when it
65 wants to mount the partition. As every filesystem has its own mountoptions, 54 wants to mount the partition. As every filesystem has its own mountoptions,
66 you are encouraged to read the mount manpage (<c>man mount</c>) for a full 55 you are encouraged to read the mount man page (<c>man mount</c>) for a full
67 listing. Multiple mountoptions are comma-separated. 56 listing. Multiple mountoptions are comma-separated.
68</li> 57</li>
69<li> 58<li>
70 The fifth field is used by <c>dump</c> to determine if the partition needs to 59 The fifth field is used by <c>dump</c> to determine if the partition needs to
71 be <b>dump</b>ed or not. You can generally leave this as <c>0</c> (zero). 60 be <b>dump</b>ed or not. You can generally leave this as <c>0</c> (zero).
72</li> 61</li>
73<li> 62<li>
74 The sixth field is used by <c>fsck</c> the order in which filesystems should 63 The sixth field is used by <c>fsck</c> to determine the order in which
75 be <b>check</b>ed if the system wasn't shut down properly. The root filesystem 64 filesystems should be <b>check</b>ed if the system wasn't shut down properly.
76 should have <c>1</c> while the rest should have <c>2</c> (or <c>0</c> in case 65 The root filesystem should have <c>1</c> while the rest should have <c>2</c>
77 a filesystem check isn't necessary). 66 (or <c>0</c> if a filesystem check isn't necessary).
78</li> 67</li>
79</ul> 68</ul>
80 69
81<p> 70<p>
71The default <path>/etc/fstab</path> file provided by Gentoo <e>is no valid fstab
82So start <c>nano</c> (or your favorite editor) to create your 72file</e>, so start <c>nano</c> (or your favorite editor) to create your
83<path>/etc/fstab</path>: 73<path>/etc/fstab</path>:
84</p> 74</p>
85 75
86<pre caption="Opening /etc/fstab"> 76<pre caption="Opening /etc/fstab">
87# <i>nano -w /etc/fstab</i> 77# <i>nano -w /etc/fstab</i>
88</pre> 78</pre>
89 79
90<p> 80<p>
91Lets take a look at how we write down the options for the <path>/boot</path> 81Let us take a look at how we write down the options for the <path>/boot</path>
92partition. This is just an example, so if your architecture doesn't require a 82partition. This is just an example, so if your architecture doesn't require a
93<path>/boot</path> partition, don't copy it verbatim. 83<path>/boot</path> partition (such as <b>PPC</b>), don't copy it verbatim.
94</p> 84</p>
95 85
96<p> 86<p>
97In our default x86 partitioning example <path>/boot</path> is the 87In our default x86 partitioning example <path>/boot</path> is the
98<path>/dev/hda1</path> partition, with <c>ext2</c> as filesystem. It shouldn't 88<path>/dev/hda1</path> partition, with <c>ext2</c> as filesystem.
99be mounted automatically (<c>noauto</c>) but does need to be checked. So we 89It needs to be checked during boot, so we would write down:
100would write down:
101</p> 90</p>
102 91
103<pre caption="An example /boot line for /etc/fstab"> 92<pre caption="An example /boot line for /etc/fstab">
104/dev/hda1 /boot ext2 noauto 1 2 93/dev/hda1 /boot ext2 defaults 1 2
94</pre>
95
96<p>
97Some users don't want their <path>/boot</path> partition to be mounted
98automatically to improve their system's security. Those people should
99substitute <c>defaults</c> with <c>noauto</c>. This does mean that you need to
100manually mount this partition every time you want to use it.
105</pre> 101</p>
106 102
107<p> 103<p>
108Now, to improve performance, most users would want to add the <c>noatime</c> 104Now, to improve performance, most users would want to add the <c>noatime</c>
109option as mountoption, which results in a faster system since access times 105option as mountoption, which results in a faster system since access times
110aren't registered (you don't need those generally anyway): 106aren't registered (you don't need those generally anyway):
111</p> 107</p>
112 108
113<pre caption="An improved /boot line for /etc/fstab"> 109<pre caption="An improved /boot line for /etc/fstab">
114/dev/hda1 /boot ext2 noauto,noatime 1 2 110/dev/hda1 /boot ext2 defaults,noatime 1 2
115</pre> 111</pre>
116 112
117<p> 113<p>
118If we continue with this, we would end up with the following three lines (for 114If we continue with this, we would end up with the following three lines (for
119<path>/boot</path>, <path>/</path> and the swap partition): 115<path>/boot</path>, <path>/</path> and the swap partition):
120</p> 116</p>
121 117
122<pre caption="Three /etc/fstab lines"> 118<pre caption="Three /etc/fstab lines">
123/dev/hda1 /boot ext2 noauto,noatime 1 2 119/dev/hda1 /boot ext2 defaults,noatime 1 2
124/dev/hda2 none swap sw 0 0 120/dev/hda2 none swap sw 0 0
125/dev/hda3 / ext3 noatime 0 1 121/dev/hda3 / ext3 noatime 0 1
126</pre> 122</pre>
127 123
128<p> 124<p>
130(required) and for your CD-ROM drive (and of course, if you have other 126(required) and for your CD-ROM drive (and of course, if you have other
131partitions or drives, for those too): 127partitions or drives, for those too):
132</p> 128</p>
133 129
134<pre caption="A full /etc/fstab example"> 130<pre caption="A full /etc/fstab example">
135/dev/hda1 /boot ext2 noauto,noatime 1 2 131/dev/hda1 /boot ext2 defaults,noatime 1 2
136/dev/hda2 none swap sw 0 0 132/dev/hda2 none swap sw 0 0
137/dev/hda3 / ext3 noatime 0 1 133/dev/hda3 / ext3 noatime 0 1
138 134
139none /proc proc defaults 0 0 135none /proc proc defaults 0 0
140none /dev/shm tmpfs defaults 0 0 136none /dev/shm tmpfs nodev,nosuid,noexec 0 0
141 137
142/dev/cdroms/cdrom0 /mnt/cdrom auto noauto,user 0 0 138/dev/cdroms/cdrom0 /mnt/cdrom auto noauto,user 0 0
143</pre> 139</pre>
144 140
145<p> 141<p>
148<c>user</c> makes it possible for non-root users to mount the CD. 144<c>user</c> makes it possible for non-root users to mount the CD.
149</p> 145</p>
150 146
151<p> 147<p>
152Now use the above example to create your <path>/etc/fstab</path>. If you are a 148Now use the above example to create your <path>/etc/fstab</path>. If you are a
153SPARC-user, you should add the following line to your <path>/etc/fstab</path> 149<b>SPARC</b>-user, you should add the following line to your
150<path>/etc/fstab</path>
154too: 151too:
155</p> 152</p>
156 153
157<pre caption="Adding openprom filesystem to /etc/fstab"> 154<pre caption="Adding openprom filesystem to /etc/fstab">
158none /proc/openprom openpromfs defaults 0 0 155none /proc/openprom openpromfs defaults 0 0
159</pre> 156</pre>
160 157
161<p> 158<p>
162If you need <c>usbfs</c>, add the following line to <path>/etc/fstab</path>:
163</p>
164
165<pre caption="Adding usbfs filesystem to /etc/fstab">
166none /proc/bus/usb usbfs defaults 0 0
167</pre>
168
169<p>
170Reread your <path>/etc/fstab</path>, save and quit to continue. 159Double-check your <path>/etc/fstab</path>, save and quit to continue.
171</p> 160</p>
172 161
173</body> 162</body>
174</subsection> 163</subsection>
175</section> 164</section>
178<subsection> 167<subsection>
179<title>Hostname, Domainname etc.</title> 168<title>Hostname, Domainname etc.</title>
180<body> 169<body>
181 170
182<p> 171<p>
183One of the choices the user has to make is name his PC. This seems to be quite 172One of the choices the user has to make is name his/her PC. This seems to be
184easy, but <e>lots</e> of users are having difficulties finding the appropriate 173quite easy, but <e>lots</e> of users are having difficulties finding the
185name for their Linux-pc. To speed things up, know that any name you choose can 174appropriate name for their Linux-pc. To speed things up, know that any name you
186be changed afterwards. For all we care, you can just call your system 175choose can be changed afterwards. For all we care, you can just call your system
187<c>tux</c> and domain <c>homenetwork</c>. 176<c>tux</c> and domain <c>homenetwork</c>.
188</p> 177</p>
189 178
190<p> 179<p>
191We use these values in the next examples. First we set the hostname: 180We use these values in the next examples. First we set the hostname:
208one), you need to define that one too: 197one), you need to define that one too:
209</p> 198</p>
210 199
211<pre caption="Setting the NIS domainname"> 200<pre caption="Setting the NIS domainname">
212# <i>echo nis.homenetwork &gt; /etc/nisdomainname</i> 201# <i>echo nis.homenetwork &gt; /etc/nisdomainname</i>
202</pre>
203
204<p>
205Now add the <c>domainname</c> script to the default runlevel:
206</p>
207
208<pre caption="Adding domainname to the default runlevel">
209# <i>rc-update add domainname default</i>
213</pre> 210</pre>
214 211
215</body> 212</body>
216</subsection> 213</subsection>
217<subsection> 214<subsection>
225your Gentoo system permanently. 222your Gentoo system permanently.
226</p> 223</p>
227 224
228<p> 225<p>
229All networking information is gathered in <path>/etc/conf.d/net</path>. It uses 226All networking information is gathered in <path>/etc/conf.d/net</path>. It uses
230a straightforward yet not intuitive syntax if you don't know how to setup 227a straightforward yet not intuitive syntax if you don't know how to set up
231networking manually. But don't fear, we'll explain everything :) 228networking manually. But don't fear, we'll explain everything :)
232</p> 229</p>
233 230
234<p> 231<p>
235First open <path>/etc/conf.d/net</path> with your favorite editor (<c>nano</c> 232First open <path>/etc/conf.d/net</path> with your favorite editor (<c>nano</c>
239<pre caption="Opening /etc/conf.d/net for editing"> 236<pre caption="Opening /etc/conf.d/net for editing">
240# <i>nano -w /etc/conf.d/net</i> 237# <i>nano -w /etc/conf.d/net</i>
241</pre> 238</pre>
242 239
243<p> 240<p>
244The first variable you'll find is <c>iface_eth0</c>. It uses the following 241The first variable you'll find is called <c>config_eth0</c>. As you can probably
245syntax: 242imagine, this variable configured the eth0 network interface. If the interface
246</p> 243needs to automatically obtain an IP through DHCP, you should set it like so:
247
248<pre caption="iface_eth0 syntaxis">
249iface_eth0="<i>&lt;your ip address&gt;</i> broadcast <i>&lt;your broadcast address&gt;</i> netmask <i>&lt;your netmask&gt;</i>"
250</pre>
251
252<p> 244</p>
253If you use DHCP (automatic IP retrieval), you should just set <c>iface_eth0</c> 245
254to <c>dhcp</c>. However, if you need to setup your network manually and you're 246<pre caption="Automatically obtaining an IP for eth0">
255not familiar with all the above terms, please read the section on <uri 247config_eth0=( "dhcp" )
256link="?part=1&amp;chap=3#doc_chap4_sect3">Understanding Network 248</pre>
257Terminology</uri> if you haven't done so already. 249
258</p> 250<p>
259 251However, if you have to enter your own IP address, netmask and gateway, you need
252to set both <c>config_eth0</c> and <c>routes_eth0</c>:
260<p> 253</p>
261So lets give two examples; the first one uses DHCP, the second one a static IP 254
262(192.168.0.2) with netmask 255.255.255.0, broadcast 192.168.0.255 and gateway 255<pre caption="Manually setting IP information for eth0">
263192.168.0.1: 256config_eth0=( "192.168.0.2 netmask 255.255.255.0" )
257routes_eth0=( "default gw 192.168.0.1" )
258</pre>
259
264</p> 260<p>
265 261If you have several network interfaces repeat the above steps for
266<pre caption="Examples for /etc/conf.d/net"> 262<c>config_eth1</c>, <c>config_eth2</c>, etc.
267<comment>(For DHCP:)</comment>
268iface_eth0="dhcp"
269
270<comment>(For static IP:)</comment>
271iface_eth0="192.168.0.2 broadcast 192.168.0.255 netmask 255.255.255.0"
272gateway="eth0/192.168.0.1"
273</pre>
274
275<p>
276If you have several network interfaces, create extra <c>iface_eth</c> variables,
277like <c>iface_eth1</c>, <c>iface_eth2</c> etc. The <c>gateway</c> variable
278shouldn't be reproduced as you can only set one gateway per computer.
279</p> 263</p>
280 264
281<p> 265<p>
282Now save the configuration and exit to continue. 266Now save the configuration and exit to continue.
283</p> 267</p>
287<subsection> 271<subsection>
288<title>Automatically Start Networking at Boot</title> 272<title>Automatically Start Networking at Boot</title>
289<body> 273<body>
290 274
291<p> 275<p>
292To have your network interfaces activated at boot, you need to add those to the 276To have your network interfaces activated at boot, you need to add them to the
293default runlevel. If you have PCMCIA interfaces you should skip this action as 277default runlevel. If you have PCMCIA interfaces you should skip this action as
294the PCMCIA interfaces are started by the PCMCIA init script. 278the PCMCIA interfaces are started by the PCMCIA init script.
295</p> 279</p>
296 280
297<pre caption="Adding net.eth0 to the default runlevel"> 281<pre caption="Adding net.eth0 to the default runlevel">
319<p> 303<p>
320You now need to inform Linux about your network. This is defined in 304You now need to inform Linux about your network. This is defined in
321<path>/etc/hosts</path> and helps in resolving hostnames to IP addresses 305<path>/etc/hosts</path> and helps in resolving hostnames to IP addresses
322for hosts that aren't resolved by your nameserver. For instance, if your 306for hosts that aren't resolved by your nameserver. For instance, if your
323internal network consists of three PCs called <c>jenny</c> (192.168.0.5), 307internal network consists of three PCs called <c>jenny</c> (192.168.0.5),
324<c>benny</c> (192.168.0.6) and <c>tux</c> (this system) you would 308<c>benny</c> (192.168.0.6) and <c>tux</c> (192.168.0.7 - this system) you would
325open <path>/etc/hosts</path> and fill in the values: 309open <path>/etc/hosts</path> and fill in the values:
326</p> 310</p>
327 311
328<pre caption="Opening /etc/hosts"> 312<pre caption="Opening /etc/hosts">
329# <i>nano -w /etc/hosts</i> 313# <i>nano -w /etc/hosts</i>
330</pre> 314</pre>
331 315
332<pre caption="Filling in the networking information"> 316<pre caption="Filling in the networking information">
333127.0.0.1 tux.homenetwork localhost 317127.0.0.1 localhost
334192.168.0.5 jenny 318192.168.0.5 jenny.homenetwork jenny
335192.168.0.56 benny 319192.168.0.6 benny.homenetwork benny
320192.168.0.7 tux.homenetwork tux
336</pre> 321</pre>
337 322
338<p> 323<p>
339If your system is the only system (or the nameservers handle all name 324If your system is the only system (or the nameservers handle all name
340resolution) a single line is sufficient: 325resolution) a single line is sufficient. For instance, if you want to call your
326system <c>tux</c>:
341</p> 327</p>
342 328
343<pre caption="/etc/hosts for lonely or fully integrated PCs"> 329<pre caption="/etc/hosts for lonely or fully integrated PCs">
344127.0.0.1 localhost tux 330127.0.0.1 localhost tux
345</pre> 331</pre>
346 332
347<p> 333<p>
348Save and exit the editor to continue. 334Save and exit the editor to continue.
349</p> 335</p>
350 336
351<p> 337<p>
352If you don't have PCMCIA, you can now continue with <uri 338If you don't have PCMCIA, you can now continue with <uri
353link="#doc_chap4">System Information</uri>. PCMCIA-users should read the 339link="#doc_chap3">System Information</uri>. PCMCIA-users should read the
354following topic on PCMCIA. 340following topic on PCMCIA.
355</p> 341</p>
356 342
357</body> 343</body>
358</subsection> 344</subsection>
359<subsection> 345<subsection>
360<title>Optional: Get PCMCIA Working</title> 346<title>Optional: Get PCMCIA Working</title>
361<body> 347<body>
362 348
349<note>
350pcmcia-cs is only available for x86, amd64 and ppc platforms.
351</note>
352
363<p> 353<p>
364PCMCIA-users should first install the <c>pcmcia-cs</c> package: 354PCMCIA-users should first install the <c>pcmcia-cs</c> package. This also
355includes users who will be working with a 2.6 kernel (even though they won't be
356using the PCMCIA drivers from this package). The <c>USE="-X"</c> is necessary
357to avoid installing xorg-x11 at this moment:
365</p> 358</p>
366 359
367<pre caption="Installing pcmcia-cs"> 360<pre caption="Installing pcmcia-cs">
368# <i>emerge -k pcmcia-cs</i> 361# <i>USE="-X" emerge pcmcia-cs</i>
369</pre> 362</pre>
370 363
371<p> 364<p>
372When <c>pcmcia-cs</c> is installed, add <c>pcmcia</c> to the <e>boot</e> 365When <c>pcmcia-cs</c> is installed, add <c>pcmcia</c> to the <e>default</e>
373runlevel: 366runlevel:
374</p> 367</p>
375 368
376<pre caption="Adding pcmcia to the default runlevel"> 369<pre caption="Adding pcmcia to the default runlevel">
377# <i>rc-update add pcmcia boot</i> 370# <i>rc-update add pcmcia default</i>
378</pre> 371</pre>
379 372
380</body> 373</body>
381</subsection> 374</subsection>
382</section> 375</section>
383<section> 376<section>
384<title>System Information</title> 377<title>System Information</title>
378<subsection>
379<title>Root Password</title>
380<body>
381
382<p>
383First we set the root password by typing:
384</p>
385
386<pre caption="Setting the root password">
387# <i>passwd</i>
388</pre>
389
390<p>
391If you want root to be able to log on through the serial console, add
392<c>tts/0</c> to <path>/etc/securetty</path>:
393</p>
394
395<pre caption="Adding tts/0 to /etc/securetty">
396# <i>echo "tts/0" &gt;&gt; /etc/securetty</i>
397</pre>
398
399</body>
400</subsection>
401<subsection>
402<title>System Information</title>
385<body> 403<body>
386 404
387<p> 405<p>
388Gentoo uses <path>/etc/rc.conf</path> for general, system-wide configuration. 406Gentoo uses <path>/etc/rc.conf</path> for general, system-wide configuration.
389Open up <path>/etc/rc.conf</path> and enjoy all the comments in that file :) 407Open up <path>/etc/rc.conf</path> and enjoy all the comments in that file :)
393# <i>nano -w /etc/rc.conf</i> 411# <i>nano -w /etc/rc.conf</i>
394</pre> 412</pre>
395 413
396<p> 414<p>
397As you can see, this file is well commented to help you set up the necessary 415As you can see, this file is well commented to help you set up the necessary
398configuration variables. When you're finished configuring 416configuration variables. Take special care with the <c>KEYMAP</c> setting: if
399<path>/etc/rc.conf</path>, save and exit to continue. 417you select the wrong <c>KEYMAP</c> you will get weird results when typing on
418your keyboard.
419</p>
420
421<note>
422Users of USB-based <b>SPARC</b> systems and <b>SPARC</b> clones might need to
423select an i386 keymap (such as "us") instead of "sunkeymap".
424</note>
425
400</p> 426<p>
427<b>PPC</b> uses x86 keymaps on most systems. Users who want to be able to use
428ADB keymaps on boot have to enable ADB keycode sendings in their kernel and have
429to set a mac/ppc keymap in <path>rc.conf</path>.
430</p>
401 431
432<p>
433If your hardware clock is not using UTC, you need to add <c>CLOCK="local"</c> to
434the file. Otherwise you will notice some clock skew.
435</p>
436
437<p>
438When you're finished configuring <path>/etc/rc.conf</path>, save and exit.
439</p>
440
441<p>
442If you are not installing Gentoo on an IBM POWER5 or JS20 system, continue with
443<uri link="?part=1&amp;chap=9">Installing Necessary System Tools</uri>.
444</p>
445
446</body>
447</subsection>
448<subsection>
449<title>Configuring the Console</title>
402</body> 450<body>
451
452<note>
453The following section applies to the IBM POWER5 and JS20 hardware platforms.
454</note>
455
456<p>
457If you are running Gentoo in an LPAR or on a JS20 blade, you must uncomment
458the hvc line in /etc/inittab for the virtual console to spawn a login prompt.
459</p>
460
461<pre caption="Enabling hvc support in /etc/inittab">
462hvc:12345:respawn:/sbin/agetty -nl /bin/bashlogin 9600 hvc0 vt220
463</pre>
464
465<p>
466You may now continue with <uri link="?part=1&amp;chap=9">Installing Necessary
467System Tools</uri>.
468</p>
469
470</body>
471</subsection>
403</section> 472</section>
404</sections> 473</sections>

Legend:
Removed from v.1.9  
changed lines
  Added in v.1.62

  ViewVC Help
Powered by ViewVC 1.1.20