/[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.8 Revision 1.64
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.8 2003/11/15 13:53:33 swift Exp $ --> 7<!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/en/handbook/hb-install-config.xml,v 1.64 2005/06/11 18:25:09 fox2mike Exp $ -->
5 8
6<sections> 9<sections>
7<section>
8<title>Timezone</title>
9<body>
10 10
11<p> 11<version>2.6</version>
12You now need to select your timezone so that your system knows where it is 12<date>2005-06-11</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, seperated 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>
52<li> 41<li>
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-seperated. 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 address through DHCP, you should set it
247 244like so:
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> 245</p>
253If you use DHCP (automatic IP retrieval), you should just set <c>iface_eth0</c> 246
254to <c>dhcp</c>. However, if you need to setup your network manually and you're 247<pre caption="Automatically obtaining an IP address for eth0">
255not familiar with all the above terms, please read the section on <uri 248config_eth0=( "dhcp" )
256link="?part=1&amp;chap=3#doc_chap4_sect3">Understanding Network 249</pre>
257Terminology</uri> if you haven't done so already. 250
258</p> 251<p>
259 252However, if you have to enter your own IP address, netmask and gateway, you need
253to set both <c>config_eth0</c> and <c>routes_eth0</c>:
260<p> 254</p>
261So lets give two examples; the first one uses DHCP, the second one a static IP 255
262(192.168.0.2) with netmask 255.255.255.0, broadcast 192.168.0.255 and gateway 256<pre caption="Manually setting IP information for eth0">
263192.168.0.1: 257config_eth0=( "192.168.0.2 netmask 255.255.255.0" )
258routes_eth0=( "default gw 192.168.0.1" )
259</pre>
260
264</p> 261<p>
265 262If you have several network interfaces repeat the above steps for
266<pre caption="Examples for /etc/conf.d/net"> 263<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> 264</p>
280 265
281<p> 266<p>
282Now save the configuration and exit to continue. 267Now save the configuration and exit to continue.
283</p> 268</p>
287<subsection> 272<subsection>
288<title>Automatically Start Networking at Boot</title> 273<title>Automatically Start Networking at Boot</title>
289<body> 274<body>
290 275
291<p> 276<p>
292To have your network interfaces activated at boot, you need to add those to the 277To 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 278default runlevel. If you have PCMCIA interfaces you should skip this action as
294the PCMCIA interfaces are started by the PCMCIA init script. 279the PCMCIA interfaces are started by the PCMCIA init script.
295</p> 280</p>
296 281
297<pre caption="Adding net.eth0 to the default runlevel"> 282<pre caption="Adding net.eth0 to the default runlevel">
319<p> 304<p>
320You now need to inform Linux about your network. This is defined in 305You 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 306<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 307for 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), 308internal 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 309<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: 310open <path>/etc/hosts</path> and fill in the values:
326</p> 311</p>
327 312
328<pre caption="Opening /etc/hosts"> 313<pre caption="Opening /etc/hosts">
329# <i>nano -w /etc/hosts</i> 314# <i>nano -w /etc/hosts</i>
330</pre> 315</pre>
331 316
332<pre caption="Filling in the networking information"> 317<pre caption="Filling in the networking information">
333127.0.0.1 tux.homenetwork localhost 318127.0.0.1 localhost
334192.168.0.5 jenny 319192.168.0.5 jenny.homenetwork jenny
335192.168.0.56 benny 320192.168.0.6 benny.homenetwork benny
321192.168.0.7 tux.homenetwork tux
336</pre> 322</pre>
337 323
338<p> 324<p>
339If your system is the only system (or the nameservers handle all name 325If your system is the only system (or the nameservers handle all name
340resolution) a single line is sufficient: 326resolution) a single line is sufficient. For instance, if you want to call your
327system <c>tux</c>:
341</p> 328</p>
342 329
343<pre caption="/etc/hosts for lonely or fully integrated PCs"> 330<pre caption="/etc/hosts for lonely or fully integrated PCs">
344127.0.0.1 localhost tux 331127.0.0.1 localhost tux
345</pre> 332</pre>
346 333
347<p> 334<p>
348Save and exit the editor to continue. 335Save and exit the editor to continue.
349</p> 336</p>
350 337
351<p> 338<p>
352If you don't have PCMCIA, you can now continue with <uri 339If you don't have PCMCIA, you can now continue with <uri
353link="#doc_chap4">System Information</uri>. PCMCIA-users should read the 340link="#doc_chap3">System Information</uri>. PCMCIA-users should read the
354following topic on PCMCIA. 341following topic on PCMCIA.
355</p> 342</p>
356 343
357</body> 344</body>
358</subsection> 345</subsection>
359<subsection> 346<subsection>
360<title>Optional: Get PCMCIA Working</title> 347<title>Optional: Get PCMCIA Working</title>
361<body> 348<body>
362 349
350<note>
351pcmcia-cs is only available for x86, amd64 and ppc platforms.
352</note>
353
363<p> 354<p>
364PCMCIA-users should first install the <c>pcmcia-cs</c> package: 355PCMCIA-users should first install the <c>pcmcia-cs</c> package. This also
356includes users who will be working with a 2.6 kernel (even though they won't be
357using the PCMCIA drivers from this package). The <c>USE="-X"</c> is necessary
358to avoid installing xorg-x11 at this moment:
365</p> 359</p>
366 360
367<pre caption="Installing pcmcia-cs"> 361<pre caption="Installing pcmcia-cs">
368# <i>emerge -k pcmcia-cs</i> 362# <i>USE="-X" emerge pcmcia-cs</i>
369</pre> 363</pre>
370 364
371<p> 365<p>
372When <c>pcmcia-cs</c> is installed, add <c>pcmcia</c> to the <e>boot</e> 366When <c>pcmcia-cs</c> is installed, add <c>pcmcia</c> to the <e>default</e>
373runlevel: 367runlevel:
374</p> 368</p>
375 369
376<pre caption="Adding pcmcia to the default runlevel"> 370<pre caption="Adding pcmcia to the default runlevel">
377# <i>rc-update add pcmcia boot</i> 371# <i>rc-update add pcmcia default</i>
378</pre> 372</pre>
379 373
380</body> 374</body>
381</subsection> 375</subsection>
382</section> 376</section>
383<section> 377<section>
384<title>System Information</title> 378<title>System Information</title>
379<subsection>
380<title>Root Password</title>
381<body>
382
383<p>
384First we set the root password by typing:
385</p>
386
387<pre caption="Setting the root password">
388# <i>passwd</i>
389</pre>
390
391<p>
392If you want root to be able to log on through the serial console, add
393<c>tts/0</c> to <path>/etc/securetty</path>:
394</p>
395
396<pre caption="Adding tts/0 to /etc/securetty">
397# <i>echo "tts/0" &gt;&gt; /etc/securetty</i>
398</pre>
399
400</body>
401</subsection>
402<subsection>
403<title>System Information</title>
385<body> 404<body>
386 405
387<p> 406<p>
388Gentoo uses <path>/etc/rc.conf</path> for general, system-wide configuration. 407Gentoo 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 :) 408Open up <path>/etc/rc.conf</path> and enjoy all the comments in that file :)
393# <i>nano -w /etc/rc.conf</i> 412# <i>nano -w /etc/rc.conf</i>
394</pre> 413</pre>
395 414
396<p> 415<p>
397As you can see, this file is well commented to help you set up the necessary 416As you can see, this file is well commented to help you set up the necessary
398configuration variables. When you're finished configuring 417configuration variables. Take special care with the <c>KEYMAP</c> setting: if
399<path>/etc/rc.conf</path>, save and exit to continue. 418you select the wrong <c>KEYMAP</c> you will get weird results when typing on
419your keyboard.
420</p>
421
422<note>
423Users of USB-based <b>SPARC</b> systems and <b>SPARC</b> clones might need to
424select an i386 keymap (such as "us") instead of "sunkeymap".
425</note>
426
400</p> 427<p>
428<b>PPC</b> uses x86 keymaps on most systems. Users who want to be able to use
429ADB keymaps on boot have to enable ADB keycode sendings in their kernel and have
430to set a mac/ppc keymap in <path>rc.conf</path>.
431</p>
401 432
433<p>
434If your hardware clock is not using UTC, you need to add <c>CLOCK="local"</c> to
435the file. Otherwise you will notice some clock skew.
436</p>
437
438<p>
439When you're finished configuring <path>/etc/rc.conf</path>, save and exit.
440</p>
441
442<p>
443If you are not installing Gentoo on an IBM POWER5 or JS20 system, continue with
444<uri link="?part=1&amp;chap=9">Installing Necessary System Tools</uri>.
445</p>
446
447</body>
448</subsection>
449<subsection>
450<title>Configuring the Console</title>
402</body> 451<body>
452
453<note>
454The following section applies to the IBM POWER5 and JS20 hardware platforms.
455</note>
456
457<p>
458If you are running Gentoo in an LPAR or on a JS20 blade, you must uncomment
459the hvc line in /etc/inittab for the virtual console to spawn a login prompt.
460</p>
461
462<pre caption="Enabling hvc support in /etc/inittab">
463hvc:12345:respawn:/sbin/agetty -nl /bin/bashlogin 9600 hvc0 vt220
464</pre>
465
466<p>
467You may now continue with <uri link="?part=1&amp;chap=9">Installing Necessary
468System Tools</uri>.
469</p>
470
471</body>
472</subsection>
403</section> 473</section>
404</sections> 474</sections>

Legend:
Removed from v.1.8  
changed lines
  Added in v.1.64

  ViewVC Help
Powered by ViewVC 1.1.20