/[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.73 Revision 1.81
2<!DOCTYPE sections SYSTEM "/dtd/book.dtd"> 2<!DOCTYPE sections SYSTEM "/dtd/book.dtd">
3 3
4<!-- 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 -->
5<!-- See http://creativecommons.org/licenses/by-sa/2.5 --> 5<!-- See http://creativecommons.org/licenses/by-sa/2.5 -->
6 6
7<!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/en/handbook/hb-install-config.xml,v 1.73 2005/09/21 19:30:32 jkt Exp $ --> 7<!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/en/handbook/hb-install-config.xml,v 1.81 2006/08/30 22:52:28 nightmorph Exp $ -->
8 8
9<sections> 9<sections>
10 10
11<version>2.14</version> 11<version>7.0</version>
12<date>2005-09-21</date> 12<date>2006-08-30</date>
13 13
14<section> 14<section>
15<title>Filesystem Information</title> 15<title>Filesystem Information</title>
16<subsection> 16<subsection>
17<title>What is fstab?</title> 17<title>What is fstab?</title>
18<body> 18<body>
19 19
20<p> 20<p>
21Under Linux, all partitions used by the system must be listed in 21Under Linux, all partitions used by the system must be listed in
22<path>/etc/fstab</path>. This file contains the mountpoints of those partitions 22<path>/etc/fstab</path>. This file contains the mount points of those partitions
23(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
24and with what special options (automatically or not, whether users can mount 24and with what special options (automatically or not, whether users can mount
25them or not, etc.) 25them or not, etc.)
26</p> 26</p>
27 27
41<li> 41<li>
42 The first field shows the <b>partition</b> described (the path to the device 42 The first field shows the <b>partition</b> described (the path to the device
43 file) 43 file)
44</li> 44</li>
45<li> 45<li>
46 The second field shows the <b>mountpoint</b> at which the partition should be 46 The second field shows the <b>mount point</b> at which the partition should be
47 mounted 47 mounted
48</li> 48</li>
49<li> 49<li>
50 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
51</li> 51</li>
52<li> 52<li>
53 The fourth field shows the <b>mountoptions</b> used by <c>mount</c> when it 53 The fourth field shows the <b>mount options</b> used by <c>mount</c> when it
54 wants to mount the partition. As every filesystem has its own mountoptions, 54 wants to mount the partition. As every filesystem has its own mount options,
55 you are encouraged to read the mount man page (<c>man mount</c>) for a full 55 you are encouraged to read the mount man page (<c>man mount</c>) for a full
56 listing. Multiple mountoptions are comma-separated. 56 listing. Multiple mount options are comma-separated.
57</li> 57</li>
58<li> 58<li>
59 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
60 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).
61</li> 61</li>
65 The root filesystem should have <c>1</c> while the rest should have <c>2</c> 65 The root filesystem should have <c>1</c> while the rest should have <c>2</c>
66 (or <c>0</c> if a filesystem check isn't necessary). 66 (or <c>0</c> if a filesystem check isn't necessary).
67</li> 67</li>
68</ul> 68</ul>
69 69
70<p> 70<impo>
71The default <path>/etc/fstab</path> file provided by Gentoo <e>is no valid fstab 71The default <path>/etc/fstab</path> file provided by Gentoo <e>is not a valid
72file</e>, so start <c>nano</c> (or your favorite editor) to create your 72fstab file</e>, You <b>have to create</b> your own <path>/etc/fstab</path>.
73<path>/etc/fstab</path>: 73</impo>
74</p>
75 74
76<pre caption="Opening /etc/fstab"> 75<pre caption="Opening /etc/fstab">
77# <i>nano -w /etc/fstab</i> 76# <i>nano -w /etc/fstab</i>
78</pre> 77</pre>
79 78
79</body>
80<body test="func:keyval('/boot')">
81
80<p> 82<p>
81Let us take a look at how we write down the options for the <path>/boot</path> 83Let us take a look at how we write down the options for the <path>/boot</path>
82partition. This is just an example, so if your architecture doesn't require a 84partition. This is just an example, if you didn't or couldn't create a
83<path>/boot</path> partition (such as <b>PPC</b>), don't copy it verbatim. 85<path>/boot</path>, don't copy it.
84</p>
85
86<p> 86</p>
87
88<p test="contains(func:keyval('/boot'), '/dev/hd')">
87In our default x86 partitioning example <path>/boot</path> is the 89In our default <keyval id="arch"/> partitioning example, <path>/boot</path> is
88<path>/dev/hda1</path> partition, with <c>ext2</c> as filesystem. 90usually the <path><keyval id="/boot"/></path> partition (or
91<path>/dev/sda*</path> if you use SCSI or SATA drives), with <c>ext2</c> as
89It needs to be checked during boot, so we would write down: 92filesystem. It needs to be checked during boot, so we would write down:
93</p>
94
95<p test="contains(func:keyval('/boot'), '/dev/sd')">
96In our default <keyval id="arch"/> partitioning example, <path>/boot</path> is
97usually the <path><keyval id="/boot"/></path> partition, with <c>ext2</c> as
98filesystem. It needs to be checked during boot, so we would write down:
90</p> 99</p>
91 100
92<pre caption="An example /boot line for /etc/fstab"> 101<pre caption="An example /boot line for /etc/fstab">
93/dev/hda1 /boot ext2 defaults 1 2 102<keyval id="/boot"/> /boot ext2 defaults 1 2
94</pre> 103</pre>
95 104
96<p> 105<p>
97Some users don't want their <path>/boot</path> partition to be mounted 106Some users don't want their <path>/boot</path> partition to be mounted
98automatically to improve their system's security. Those people should 107automatically to improve their system's security. Those people should
99substitute <c>defaults</c> with <c>noauto</c>. This does mean that you need to 108substitute <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. 109manually mount this partition every time you want to use it.
101</p> 110</p>
102 111
112</body>
113<body>
114
115<p test="not(func:keyval('arch')='SPARC')">
116Add the rules that match your partitioning scheme and append rules for
117<path>/proc</path>, <c>tmpfs</c>, for your CD-ROM drive(s), and of course, if
118you have other partitions or drives, for those too.
103<p> 119</p>
104Now, to improve performance, most users would want to add the <c>noatime</c>
105option as mountoption, which results in a faster system since access times
106aren't registered (you don't need those generally anyway):
107</p>
108 120
109<pre caption="An improved /boot line for /etc/fstab"> 121<p test="func:keyval('arch')='SPARC'">
110/dev/hda1 /boot ext2 defaults,noatime 1 2 122Add the rules that match your partitioning schema and append rules for
111</pre> 123<path>/proc/openprom</path>, <path>/proc</path>, <c>tmpfs</c> , for your CD-ROM
112 124drive(s), and of course, if you have other partitions or drives, for those too.
113<p> 125</p>
114If we continue with this, we would end up with the following three lines (for 126
115<path>/boot</path>, <path>/</path> and the swap partition):
116</p> 127<p>
117 128Now use the <e>example</e> below to create your <path>/etc/fstab</path>:
118<pre caption="Three /etc/fstab lines">
119/dev/hda1 /boot ext2 defaults,noatime 1 2
120/dev/hda2 none swap sw 0 0
121/dev/hda3 / ext3 noatime 0 1
122</pre>
123
124<p> 129</p>
125To finish up, you should add a rule for <path>/proc</path>, <c>tmpfs</c>
126(required) and for your CD-ROM drive (and of course, if you have other
127partitions or drives, for those too):
128</p>
129 130
130<pre caption="A full /etc/fstab example"> 131<pre caption="A full /etc/fstab example" test="func:keyval('arch')='AMD64' or func:keyval('arch')='x86'">
131/dev/hda1 /boot ext2 defaults,noatime 1 2 132<keyval id="/boot"/> /boot ext2 defaults,noatime 1 2
132/dev/hda2 none swap sw 0 0 133/dev/hda2 none swap sw 0 0
133/dev/hda3 / ext3 noatime 0 1 134/dev/hda3 / ext3 noatime 0 1
134 135
135none /proc proc defaults 0 0 136none /proc proc defaults 0 0
136none /dev/shm tmpfs nodev,nosuid,noexec 0 0 137none /dev/shm tmpfs nodev,nosuid,noexec 0 0
137 138
139/dev/cdrom /mnt/cdrom auto noauto,user 0 0
140</pre>
141
142<pre caption="A full /etc/fstab example" test="func:keyval('arch')='HPPA'">
143<keyval id="/boot"/> /boot ext2 defaults,noatime 1 2
144/dev/sda3 none swap sw 0 0
145/dev/sda4 / ext3 noatime 0 1
146
147none /proc proc defaults 0 0
148none /dev/shm tmpfs nodev,nosuid,noexec 0 0
149
150/dev/cdrom /mnt/cdrom auto noauto,user 0 0
151</pre>
152
153<pre caption="A full /etc/fstab example" test="func:keyval('arch')='Alpha' or func:keyval('arch')='MIPS'">
154<keyval id="/boot"/> /boot ext2 defaults,noatime 1 2
155/dev/sda2 none swap sw 0 0
156/dev/sda3 / ext3 noatime 0 1
157
158none /proc proc defaults 0 0
159none /dev/shm tmpfs nodev,nosuid,noexec 0 0
160
161/dev/cdrom /mnt/cdrom auto noauto,user 0 0
162</pre>
163
164<pre caption="A full /etc/fstab example" test="func:keyval('arch')='SPARC'">
165/dev/sda1 / ext3 noatime 0 1
166/dev/sda2 none swap sw 0 0
167/dev/sda4 /usr ext3 noatime 0 2
168/dev/sda5 /var ext3 noatime 0 2
169/dev/sda6 /home ext3 noatime 0 2
170
171none /proc/openprom openpromfs defaults 0 0
172none /proc proc defaults 0 0
173none /dev/shm tmpfs nodev,nosuid,noexec 0 0
174
138/dev/cdroms/cdrom0 /mnt/cdrom auto noauto,user 0 0 175/dev/cdrom /mnt/cdrom auto noauto,user 0 0
176</pre>
177
178<note test="func:keyval('arch')='PPC'">
179There are important variations between PPC machine types. Please make sure you
180adapt the following example to your system.
181</note>
182
183<pre caption="A full /etc/fstab example" test="func:keyval('arch')='PPC'">
184/dev/hda4 / ext3 noatime 0 1
185/dev/hda3 none swap sw 0 0
186
187none /proc proc defaults 0 0
188none /dev/shm tmpfs nodev,nosuid,noexec 0 0
189
190/dev/cdrom /mnt/cdrom auto noauto,user 0 0
191</pre>
192
193<pre caption="A full /etc/fstab example" test="func:keyval('arch')='PPC64'">
194/dev/sda4 / ext3 noatime 0 1
195/dev/sda3 none swap sw 0 0
196
197none /proc proc defaults 0 0
198none /dev/shm tmpfs nodev,nosuid,noexec 0 0
199
200/dev/cdrom /mnt/cdrom auto noauto,user 0 0
139</pre> 201</pre>
140 202
141<p> 203<p>
142<c>auto</c> makes <c>mount</c> guess for the filesystem (recommended for 204<c>auto</c> makes <c>mount</c> guess for the filesystem (recommended for
143removable media as they can be created with one of many filesystems) and 205removable media as they can be created with one of many filesystems) and
144<c>user</c> makes it possible for non-root users to mount the CD. 206<c>user</c> makes it possible for non-root users to mount the CD.
145</p> 207</p>
146 208
147<p> 209<p>
148Now use the above example to create your <path>/etc/fstab</path>. If you are a 210To improve performance, most users would want to add the <c>noatime</c>
149<b>SPARC</b>-user, you should add the following line to your 211mount option, which results in a faster system since access times
150<path>/etc/fstab</path> 212aren't registered (you don't need those generally anyway).
151too:
152</p>
153
154<pre caption="Adding openprom filesystem to /etc/fstab">
155none /proc/openprom openpromfs defaults 0 0
156</pre> 213</p>
157 214
158<p> 215<p>
159Double-check your <path>/etc/fstab</path>, save and quit to continue. 216Double-check your <path>/etc/fstab</path>, save and quit to continue.
160</p> 217</p>
161 218
163</subsection> 220</subsection>
164</section> 221</section>
165<section> 222<section>
166<title>Networking Information</title> 223<title>Networking Information</title>
167<subsection> 224<subsection>
168<title>Hostname, Domainname etc.</title> 225<title>Host name</title>
169<body> 226<body>
170 227
171<p> 228<p>
172One of the choices the user has to make is name his/her PC. This seems to be 229One of the choices the user has to make is name his/her PC. This seems to be
173quite easy, but <e>lots</e> of users are having difficulties finding the 230quite easy, but <e>lots</e> of users are having difficulties finding the
174appropriate name for their Linux-pc. To speed things up, know that any name you 231appropriate name for their Linux-pc. To speed things up, know that any name you
175choose can be changed afterwards. For all we care, you can just call your system 232choose can be changed afterwards. For all we care, you can just call your system
176<c>tux</c> and domain <c>homenetwork</c>. 233<c>tux</c> and domain <c>homenetwork</c>.
177</p> 234</p>
178 235
179<p>
180We use these values in the next examples. First we set the hostname:
181</p>
182
183<pre caption="Setting the hostname"> 236<pre caption="Setting the host name">
184# <i>nano -w /etc/conf.d/hostname</i> 237# <i>nano -w /etc/conf.d/hostname</i>
185 238
186<comment>(Set the HOSTNAME variable to your hostname)</comment> 239<comment>(Set the HOSTNAME variable to your host name)</comment>
187HOSTNAME="<i>tux</i>" 240HOSTNAME="<i>tux</i>"
188</pre>
189
190<p>
191Second we set the domainname:
192</p>
193
194<pre caption="Setting the domainname">
195# <i>nano -w /etc/conf.d/domainname</i>
196
197<comment>(Set the DNSDOMAIN variable to your domain name)</comment>
198DNSDOMAIN="<i>homenetwork</i>"
199</pre>
200
201<p>
202If you have a NIS domain (if you don't know what that is, then you don't have
203one), you need to define that one too:
204</p>
205
206<pre caption="Setting the NIS domainname">
207# <i>nano -w /etc/conf.d/domainname</i>
208
209<comment>(Set the NISDOMAIN variable to your NIS domain name)</comment>
210NISDOMAIN="<i>my-nisdomain</i>"
211</pre>
212
213<p>
214Now add the <c>domainname</c> script to the default runlevel:
215</p>
216
217<pre caption="Adding domainname to the default runlevel">
218# <i>rc-update add domainname default</i>
219</pre> 241</pre>
220 242
221</body> 243</body>
222</subsection> 244</subsection>
223<subsection> 245<subsection>
275To enter your own IP address, netmask and gateway, you need 297To enter your own IP address, netmask and gateway, you need
276to set both <c>config_eth0</c> and <c>routes_eth0</c>: 298to set both <c>config_eth0</c> and <c>routes_eth0</c>:
277</p> 299</p>
278 300
279<pre caption="Manually setting IP information for eth0"> 301<pre caption="Manually setting IP information for eth0">
280config_eth0=( "192.168.0.2 netmask 255.255.255.0" ) 302config_eth0=( "192.168.0.2 netmask 255.255.255.0 brd 192.168.0.255" )
281routes_eth0=( "default gw 192.168.0.1" ) 303routes_eth0=( "default gw 192.168.0.1" )
282</pre> 304</pre>
283 305
284<p> 306<p>
285To use DHCP and add specific DHCP options, define <c>config_eth0</c> and 307To use DHCP and add specific DHCP options, define <c>config_eth0</c> and
327use <c>ln</c> to do this: 349use <c>ln</c> to do this:
328</p> 350</p>
329 351
330<pre caption="Creating extra initscripts"> 352<pre caption="Creating extra initscripts">
331# <i>cd /etc/init.d</i> 353# <i>cd /etc/init.d</i>
332# <i>ln -s net.eth0 net.eth1</i> 354# <i>ln -s net.lo net.eth1</i>
333# <i>rc-update add net.eth1 default</i> 355# <i>rc-update add net.eth1 default</i>
334</pre> 356</pre>
335 357
336</body> 358</body>
337</subsection> 359</subsection>
339<title>Writing Down Network Information</title> 361<title>Writing Down Network Information</title>
340<body> 362<body>
341 363
342<p> 364<p>
343You now need to inform Linux about your network. This is defined in 365You now need to inform Linux about your network. This is defined in
344<path>/etc/hosts</path> and helps in resolving hostnames to IP addresses 366<path>/etc/hosts</path> and helps in resolving host names to IP addresses for
345for hosts that aren't resolved by your nameserver. For instance, if your 367hosts that aren't resolved by your nameserver. You need to define your system.
346internal network consists of three PCs called <c>jenny</c> (192.168.0.5), 368You may also want to define other systems on your network if you don't want to
347<c>benny</c> (192.168.0.6) and <c>tux</c> (192.168.0.7 - this system) you would 369set up your own internal DNS system.
348open <path>/etc/hosts</path> and fill in the values:
349</p> 370</p>
350 371
351<pre caption="Opening /etc/hosts"> 372<pre caption="Opening /etc/hosts">
352# <i>nano -w /etc/hosts</i> 373# <i>nano -w /etc/hosts</i>
353</pre> 374</pre>
354 375
355<pre caption="Filling in the networking information"> 376<pre caption="Filling in the networking information">
356127.0.0.1 localhost 377<comment>(This defines the current system)</comment>
378127.0.0.1 tux.homenetwork tux localhost
379
380<comment>(Define extra systems on your network,
381they need to have a static IP to be defined this way.)</comment>
357192.168.0.5 jenny.homenetwork jenny 382192.168.0.5 jenny.homenetwork jenny
358192.168.0.6 benny.homenetwork benny 383192.168.0.6 benny.homenetwork benny
359192.168.0.7 tux.homenetwork tux
360</pre>
361
362<p>
363If your system is the only system (or the nameservers handle all name
364resolution) a single line is sufficient. For instance, if you want to call your
365system <c>tux</c>:
366</p>
367
368<pre caption="/etc/hosts for lonely or fully integrated PCs">
369127.0.0.1 localhost tux
370</pre> 384</pre>
371 385
372<p> 386<p>
373Save and exit the editor to continue. 387Save and exit the editor to continue.
374</p> 388</p>
375 389
376<p> 390<p test="func:keyval('arch')='AMD64' or func:keyval('arch')='x86' or substring(func:keyval('arch'),1,3)='PPC'">
377If you don't have PCMCIA, you can now continue with <uri 391If you don't have PCMCIA, you can now continue with <uri
378link="#doc_chap3">System Information</uri>. PCMCIA-users should read the 392link="#sysinfo">System Information</uri>. PCMCIA-users should read the
379following topic on PCMCIA. 393following topic on PCMCIA.
380</p> 394</p>
381 395
382</body> 396</body>
383</subsection> 397</subsection>
384<subsection> 398<subsection test="func:keyval('arch')='AMD64' or func:keyval('arch')='x86' or substring(func:keyval('arch'),1,3)='PPC'">
385<title>Optional: Get PCMCIA Working</title> 399<title>Optional: Get PCMCIA Working</title>
386<body> 400<body>
387
388<note>
389pcmcia-cs is only available for x86, amd64 and ppc platforms.
390</note>
391 401
392<p> 402<p>
393PCMCIA-users should first install the <c>pcmcia-cs</c> package. This also 403PCMCIA-users should first install the <c>pcmcia-cs</c> package. This also
394includes users who will be working with a 2.6 kernel (even though they won't be 404includes users who will be working with a 2.6 kernel (even though they won't be
395using the PCMCIA drivers from this package). The <c>USE="-X"</c> is necessary 405using the PCMCIA drivers from this package). The <c>USE="-X"</c> is necessary
410</pre> 420</pre>
411 421
412</body> 422</body>
413</subsection> 423</subsection>
414</section> 424</section>
415<section> 425
426<section id="sysinfo">
416<title>System Information</title> 427<title>System Information</title>
417<subsection> 428<subsection>
418<title>Root Password</title> 429<title>Root Password</title>
419<body> 430<body>
420 431
472<p> 483<p>
473Take special care with the <c>KEYMAP</c> variable. If you select the wrong 484Take special care with the <c>KEYMAP</c> variable. If you select the wrong
474<c>KEYMAP</c>, you will get weird results when typing on your keyboard. 485<c>KEYMAP</c>, you will get weird results when typing on your keyboard.
475</p> 486</p>
476 487
488<note test="func:keyval('arch')='SPARC'">
489Users of USB-based SPARC systems and SPARC clones might need to select an i386
490keymap (such as "us") instead of "sunkeymap".
477<note> 491</note>
478Users of USB-based <b>SPARC</b> systems and <b>SPARC</b> clones might need to 492
479select an i386 keymap (such as "us") instead of "sunkeymap". <b>PPC</b> uses x86 493<note test="substring(func:keyval('arch'),1,3)='PPC'">
480keymaps on most systems. Users who want to be able to use ADB keymaps on boot 494PPC uses x86 keymaps on most systems. Users who want to be able to use ADB
481have to enable ADB keycode sendings in their kernel and have to set a mac/ppc 495keymaps on boot have to enable ADB keycode sendings in their kernel and have to
482keymap in <path>/etc/conf.d/keymaps</path>. 496set a mac/ppc keymap in <path>/etc/conf.d/keymaps</path>.
483</note> 497</note>
484 498
485<p> 499<p>
486When you're finished configuring <path>/etc/conf.d/keymaps</path>, save and 500When you're finished configuring <path>/etc/conf.d/keymaps</path>, save and
487exit. 501exit.
506<p> 520<p>
507When you're finished configuring <path>/etc/conf.d/clock</path>, save and 521When you're finished configuring <path>/etc/conf.d/clock</path>, save and
508exit. 522exit.
509</p> 523</p>
510 524
525<p test="not(func:keyval('arch')='PPC64')">
526Please continue with <uri link="?part=1&amp;chap=9">Installing Necessary System
527Tools</uri>.
511<p> 528</p>
512If you are not installing Gentoo on IBM PPC64 hardware, continue with
513<uri link="?part=1&amp;chap=9">Installing Necessary System Tools</uri>.
514</p>
515 529
516</body> 530</body>
517</subsection>
518<subsection> 531</subsection>
532<subsection test="func:keyval('arch')='PPC64'">
519<title>Configuring the Console</title> 533<title>Configuring the Console</title>
520<body> 534<body>
521 535
522<note>
523The following section applies to the IBM PPC64 hardware platforms.
524</note>
525
526<p> 536<p>
527If you are running Gentoo on IBM PPC64 hardware and using a virtual console 537If you are using a virtual console, you must uncomment the appropriate line in
528you must uncomment the appropriate line in <path>/etc/inittab</path> for the 538<path>/etc/inittab</path> for the virtual console to spawn a login prompt.
529virtual console to spawn a login prompt.
530</p> 539</p>
531 540
532<pre caption="Enabling hvc or hvsi support in /etc/inittab"> 541<pre caption="Enabling hvc or hvsi support in /etc/inittab">
533hvc0:12345:respawn:/sbin/agetty -L 9600 hvc0 542hvc0:12345:respawn:/sbin/agetty -L 9600 hvc0
534hvsi:12345:respawn:/sbin/agetty -L 19200 hvsi0 543hvsi:12345:respawn:/sbin/agetty -L 19200 hvsi0

Legend:
Removed from v.1.73  
changed lines
  Added in v.1.81

  ViewVC Help
Powered by ViewVC 1.1.20