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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.103 - (hide annotations) (download) (as text)
Tue Aug 2 17:43:17 2011 UTC (3 years, 1 month ago) by jkt
Branch: MAIN
Changes since 1.102: +7 -11 lines
File MIME type: application/xml
#377309, there's no net.eth0 by default in the new openrc/baselayout

1 swift 1.18 <?xml version='1.0' encoding='UTF-8'?>
2     <!DOCTYPE sections SYSTEM "/dtd/book.dtd">
3    
4 swift 1.4 <!-- The content of this document is licensed under the CC-BY-SA license -->
5 fox2mike 1.68 <!-- See http://creativecommons.org/licenses/by-sa/2.5 -->
6 swift 1.4
7 jkt 1.103 <!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/en/handbook/hb-install-config.xml,v 1.102 2010/05/14 22:32:52 nightmorph Exp $ -->
8 swift 1.8
9 swift 1.2 <sections>
10 swift 1.50
11 neysx 1.86 <abstract>
12     You need to edit some important configuration files. In this chapter
13     you receive an overview of these files and an explanation on how to
14     proceed.
15     </abstract>
16    
17 jkt 1.103 <version>10</version>
18     <date>2011-08-02</date>
19 swift 1.50
20 swift 1.1 <section>
21     <title>Filesystem Information</title>
22 swift 1.3 <subsection>
23     <title>What is fstab?</title>
24 swift 1.1 <body>
25    
26     <p>
27 swift 1.3 Under Linux, all partitions used by the system must be listed in
28 neysx 1.79 <path>/etc/fstab</path>. This file contains the mount points of those partitions
29 swift 1.3 (where they are seen in the file system structure), how they should be mounted
30 neysx 1.45 and with what special options (automatically or not, whether users can mount
31     them or not, etc.)
32 swift 1.1 </p>
33    
34     </body>
35 swift 1.3 </subsection>
36     <subsection>
37     <title>Creating /etc/fstab</title>
38     <body>
39    
40     <p>
41 swift 1.17 <path>/etc/fstab</path> uses a special syntax. Every line consists of six
42 swift 1.9 fields, separated by whitespace (space(s), tabs or a mixture). Each field has
43 swift 1.3 its own meaning:
44     </p>
45    
46     <ul>
47     <li>
48     The first field shows the <b>partition</b> described (the path to the device
49     file)
50     </li>
51     <li>
52 neysx 1.79 The second field shows the <b>mount point</b> at which the partition should be
53 swift 1.3 mounted
54     </li>
55     <li>
56     The third field shows the <b>filesystem</b> used by the partition
57     </li>
58     <li>
59 neysx 1.79 The fourth field shows the <b>mount options</b> used by <c>mount</c> when it
60     wants to mount the partition. As every filesystem has its own mount options,
61 swift 1.49 you are encouraged to read the mount man page (<c>man mount</c>) for a full
62 neysx 1.79 listing. Multiple mount options are comma-separated.
63 swift 1.3 </li>
64     <li>
65     The fifth field is used by <c>dump</c> to determine if the partition needs to
66     be <b>dump</b>ed or not. You can generally leave this as <c>0</c> (zero).
67     </li>
68     <li>
69 swift 1.17 The sixth field is used by <c>fsck</c> to determine the order in which
70     filesystems should be <b>check</b>ed if the system wasn't shut down properly.
71     The root filesystem should have <c>1</c> while the rest should have <c>2</c>
72 neysx 1.45 (or <c>0</c> if a filesystem check isn't necessary).
73 swift 1.3 </li>
74     </ul>
75    
76 neysx 1.79 <impo>
77 nightmorph 1.77 The default <path>/etc/fstab</path> file provided by Gentoo <e>is not a valid
78 nightmorph 1.90 fstab file</e>. You <b>have to create</b> your own <path>/etc/fstab</path>.
79 neysx 1.79 </impo>
80 swift 1.3
81     <pre caption="Opening /etc/fstab">
82     # <i>nano -w /etc/fstab</i>
83     </pre>
84    
85 neysx 1.79 </body>
86     <body test="func:keyval('/boot')">
87    
88 swift 1.3 <p>
89 swift 1.17 Let us take a look at how we write down the options for the <path>/boot</path>
90 neysx 1.79 partition. This is just an example, if you didn't or couldn't create a
91     <path>/boot</path>, don't copy it.
92 swift 1.3 </p>
93    
94 nightmorph 1.99 <p>
95 neysx 1.79 In our default <keyval id="arch"/> partitioning example, <path>/boot</path> is
96     usually the <path><keyval id="/boot"/></path> partition, with <c>ext2</c> as
97     filesystem. It needs to be checked during boot, so we would write down:
98 swift 1.3 </p>
99    
100     <pre caption="An example /boot line for /etc/fstab">
101 neysx 1.79 <keyval id="/boot"/> /boot ext2 defaults 1 2
102 swift 1.3 </pre>
103    
104     <p>
105 swift 1.35 Some users don't want their <path>/boot</path> partition to be mounted
106 swift 1.43 automatically to improve their system's security. Those people should
107     substitute <c>defaults</c> with <c>noauto</c>. This does mean that you need to
108     manually mount this partition every time you want to use it.
109 swift 1.35 </p>
110    
111 neysx 1.79 </body>
112     <body>
113    
114 nightmorph 1.99 <p>
115 neysx 1.79 Add the rules that match your partitioning scheme and append rules for
116 swift 1.95 your CD-ROM drive(s), and of course, if you have other partitions or drives,
117     for those too.
118 neysx 1.79 </p>
119    
120 swift 1.35 <p>
121 neysx 1.79 Now use the <e>example</e> below to create your <path>/etc/fstab</path>:
122 swift 1.3 </p>
123    
124 neysx 1.79 <pre caption="A full /etc/fstab example" test="func:keyval('arch')='HPPA'">
125     <keyval id="/boot"/> /boot ext2 defaults,noatime 1 2
126     /dev/sda3 none swap sw 0 0
127     /dev/sda4 / ext3 noatime 0 1
128    
129     /dev/cdrom /mnt/cdrom auto noauto,user 0 0
130 nightmorph 1.102
131     proc /proc proc defaults 0 0
132     shm /dev/shm tmpfs nodev,nosuid,noexec 0 0
133 neysx 1.79 </pre>
134    
135 nightmorph 1.99 <pre caption="A full /etc/fstab example" test="func:keyval('arch')='Alpha' or func:keyval('arch')='MIPS' or func:keyval('arch')='x86' or func:keyval('arch')='AMD64'">
136 neysx 1.79 <keyval id="/boot"/> /boot ext2 defaults,noatime 1 2
137     /dev/sda2 none swap sw 0 0
138     /dev/sda3 / ext3 noatime 0 1
139    
140     /dev/cdrom /mnt/cdrom auto noauto,user 0 0
141 nightmorph 1.102
142     proc /proc proc defaults 0 0
143     shm /dev/shm tmpfs nodev,nosuid,noexec 0 0
144 neysx 1.79 </pre>
145    
146     <pre caption="A full /etc/fstab example" test="func:keyval('arch')='SPARC'">
147     /dev/sda1 / ext3 noatime 0 1
148     /dev/sda2 none swap sw 0 0
149     /dev/sda4 /usr ext3 noatime 0 2
150     /dev/sda5 /var ext3 noatime 0 2
151     /dev/sda6 /home ext3 noatime 0 2
152    
153 nightmorph 1.99 <comment># You must add the rules for openprom</comment>
154 neysx 1.87 openprom /proc/openprom openpromfs defaults 0 0
155 swift 1.3
156 neysx 1.79 /dev/cdrom /mnt/cdrom auto noauto,user 0 0
157 nightmorph 1.102
158     proc /proc proc defaults 0 0
159     shm /dev/shm tmpfs nodev,nosuid,noexec 0 0
160 swift 1.3 </pre>
161    
162 nightmorph 1.99 <pre caption="A full /etc/fstab example" test="func:keyval('arch')='PPC' or
163     func:keyval('arch')='PPC64'">
164 neysx 1.79 /dev/sda4 / ext3 noatime 0 1
165     /dev/sda3 none swap sw 0 0
166 swift 1.3
167 neysx 1.79 /dev/cdrom /mnt/cdrom auto noauto,user 0 0
168 nightmorph 1.102
169     proc /proc proc defaults 0 0
170     shm /dev/shm tmpfs nodev,nosuid,noexec 0 0
171 swift 1.3 </pre>
172    
173     <p>
174     <c>auto</c> makes <c>mount</c> guess for the filesystem (recommended for
175     removable media as they can be created with one of many filesystems) and
176     <c>user</c> makes it possible for non-root users to mount the CD.
177     </p>
178    
179     <p>
180 neysx 1.79 To improve performance, most users would want to add the <c>noatime</c>
181     mount option, which results in a faster system since access times
182     aren't registered (you don't need those generally anyway).
183 swift 1.3 </p>
184    
185 swift 1.5 <p>
186 neysx 1.34 Double-check your <path>/etc/fstab</path>, save and quit to continue.
187 swift 1.3 </p>
188    
189     </body>
190     </subsection>
191 swift 1.2 </section>
192     <section>
193 swift 1.1 <title>Networking Information</title>
194 swift 1.3 <subsection>
195 nightmorph 1.84 <title>Host name, Domainname, etc</title>
196 swift 1.3 <body>
197    
198     <p>
199 swift 1.33 One of the choices the user has to make is name his/her PC. This seems to be
200     quite easy, but <e>lots</e> of users are having difficulties finding the
201     appropriate name for their Linux-pc. To speed things up, know that any name you
202     choose can be changed afterwards. For all we care, you can just call your system
203 swift 1.3 <c>tux</c> and domain <c>homenetwork</c>.
204     </p>
205    
206 neysx 1.79 <pre caption="Setting the host name">
207 swift 1.66 # <i>nano -w /etc/conf.d/hostname</i>
208    
209 neysx 1.79 <comment>(Set the HOSTNAME variable to your host name)</comment>
210 swift 1.66 HOSTNAME="<i>tux</i>"
211 swift 1.3 </pre>
212    
213 nightmorph 1.84 <p>
214 nightmorph 1.89 Second, <e>if</e> you need a domainname, set it in <path>/etc/conf.d/net</path>.
215     You only need a domain if your ISP or network administrator says so, or if you
216     have a DNS server but not a DHCP server. You don't need to worry about DNS or
217     domainnames if your networking is setup for DHCP.
218 nightmorph 1.84 </p>
219    
220     <pre caption="Setting the domainname">
221     # <i>nano -w /etc/conf.d/net</i>
222    
223     <comment>(Set the dns_domain variable to your domain name)</comment>
224     dns_domain_lo="<i>homenetwork</i>"
225     </pre>
226    
227 nightmorph 1.89 <note>
228     If you choose not to set a domainname, you can get rid of the "This is
229     hostname.(none)" messages at your login screen by editing
230     <path>/etc/issue</path>. Just delete the string <c>.\O</c> from that file.
231     </note>
232    
233 nightmorph 1.84 <p>
234     If you have a NIS domain (if you don't know what that is, then you don't have
235     one), you need to define that one too:
236     </p>
237    
238     <pre caption="Setting the NIS domainname">
239     # <i>nano -w /etc/conf.d/net</i>
240    
241     <comment>(Set the nis_domain variable to your NIS domain name)</comment>
242     nis_domain_lo="<i>my-nisdomain</i>"
243     </pre>
244    
245 nightmorph 1.85 <note>
246     For more information on configuring DNS and NIS, please read the examples
247 nightmorph 1.88 provided in <path>/etc/conf.d/net.example</path>. Also, you may want to emerge
248 nightmorph 1.98 <c>openresolv</c> to help manage your DNS/NIS setup.
249 nightmorph 1.85 </note>
250    
251 swift 1.3 </body>
252     </subsection>
253     <subsection>
254     <title>Configuring your Network</title>
255     <body>
256    
257     <p>
258     Before you get that "Hey, we've had that already"-feeling, you should remember
259 fox2mike 1.67 that the networking you set up in the beginning of the Gentoo installation was
260 swift 1.3 just for the installation. Right now you are going to configure networking for
261     your Gentoo system permanently.
262     </p>
263    
264 fox2mike 1.65 <note>
265     More detailed information about networking, including advanced topics like
266 swift 1.72 bonding, bridging, 802.1Q VLANs or wireless networking is covered in the <uri
267 fox2mike 1.65 link="?part=4">Gentoo Network Configuration</uri> section.
268     </note>
269    
270 swift 1.3 <p>
271     All networking information is gathered in <path>/etc/conf.d/net</path>. It uses
272 swift 1.48 a straightforward yet not intuitive syntax if you don't know how to set up
273 neysx 1.69 networking manually. But don't fear, we'll explain everything. A fully
274     commented example that covers many different configurations is available in
275     <path>/etc/conf.d/net.example</path>.
276 swift 1.3 </p>
277    
278     <p>
279 neysx 1.83 DHCP is used by default. For DHCP to work, you will need to install a DHCP
280     client. This is described later in <uri
281     link="?part=1&amp;chap=9#networking-tools">Installing Necessary System
282     Tools</uri>. Do not forget to install a DHCP client.
283 neysx 1.69 </p>
284    
285     <p>
286     If you need to configure your network connection either because you need
287     specific DHCP options or because you do not use DHCP at all, open
288     <path>/etc/conf.d/net</path> with your favorite editor (<c>nano</c> is used in
289     this example):
290 swift 1.3 </p>
291    
292     <pre caption="Opening /etc/conf.d/net for editing">
293     # <i>nano -w /etc/conf.d/net</i>
294     </pre>
295    
296 swift 1.58 <p>
297 neysx 1.69 You will see the following file:
298 swift 1.58 </p>
299    
300 neysx 1.69 <pre caption="Default /etc/conf.d/net">
301     # This blank configuration will automatically use DHCP for any net.*
302     # scripts in /etc/init.d. To create a more complete configuration,
303     # please review /etc/conf.d/net.example and save your configuration
304     # in /etc/conf.d/net (this file :]!).
305 swift 1.58 </pre>
306    
307     <p>
308 neysx 1.69 To enter your own IP address, netmask and gateway, you need
309 swift 1.58 to set both <c>config_eth0</c> and <c>routes_eth0</c>:
310     </p>
311    
312     <pre caption="Manually setting IP information for eth0">
313 swift 1.74 config_eth0=( "192.168.0.2 netmask 255.255.255.0 brd 192.168.0.255" )
314 nightmorph 1.90 routes_eth0=( "default via 192.168.0.1" )
315 swift 1.58 </pre>
316    
317     <p>
318 nightmorph 1.100 To use DHCP, define <c>config_eth0</c>:
319 neysx 1.69 </p>
320    
321     <pre caption="Automatically obtaining an IP address for eth0">
322     config_eth0=( "dhcp" )
323     </pre>
324    
325     <p>
326     Please read <path>/etc/conf.d/net.example</path> for a list of all available
327 nightmorph 1.100 options. Be sure to also read your DHCP client manpage if you need to set
328     specific DHCP options.
329 neysx 1.69 </p>
330    
331     <p>
332 swift 1.58 If you have several network interfaces repeat the above steps for
333     <c>config_eth1</c>, <c>config_eth2</c>, etc.
334     </p>
335    
336 swift 1.3 <p>
337     Now save the configuration and exit to continue.
338     </p>
339    
340     </body>
341     </subsection>
342     <subsection>
343     <title>Automatically Start Networking at Boot</title>
344 swift 1.1 <body>
345    
346     <p>
347 neysx 1.45 To have your network interfaces activated at boot, you need to add them to the
348 nightmorph 1.90 default runlevel.
349 swift 1.3 </p>
350    
351     <pre caption="Adding net.eth0 to the default runlevel">
352 jkt 1.103 # <i>cd /etc/init.d</i>
353     # <i>ln -s net.lo net.eth0</i>
354 swift 1.3 # <i>rc-update add net.eth0 default</i>
355     </pre>
356    
357     <p>
358     If you have several network interfaces, you need to create the appropriate
359 jkt 1.103 <path>net.eth1</path>, <path>net.eth2</path> etc. just like you did with
360     <path>net.eth0</path>.
361 swift 1.1 </p>
362    
363     </body>
364 swift 1.3 </subsection>
365     <subsection>
366     <title>Writing Down Network Information</title>
367     <body>
368    
369     <p>
370     You now need to inform Linux about your network. This is defined in
371 neysx 1.79 <path>/etc/hosts</path> and helps in resolving host names to IP addresses for
372 neysx 1.78 hosts that aren't resolved by your nameserver. You need to define your system.
373     You may also want to define other systems on your network if you don't want to
374     set up your own internal DNS system.
375 swift 1.3 </p>
376    
377     <pre caption="Opening /etc/hosts">
378     # <i>nano -w /etc/hosts</i>
379     </pre>
380    
381     <pre caption="Filling in the networking information">
382 neysx 1.78 <comment>(This defines the current system)</comment>
383     127.0.0.1 tux.homenetwork tux localhost
384    
385     <comment>(Define extra systems on your network,
386     they need to have a static IP to be defined this way.)</comment>
387 swift 1.22 192.168.0.5 jenny.homenetwork jenny
388     192.168.0.6 benny.homenetwork benny
389 swift 1.3 </pre>
390    
391     <p>
392     Save and exit the editor to continue.
393     </p>
394    
395 neysx 1.79 <p test="func:keyval('arch')='AMD64' or func:keyval('arch')='x86' or substring(func:keyval('arch'),1,3)='PPC'">
396 swift 1.3 If you don't have PCMCIA, you can now continue with <uri
397 neysx 1.79 link="#sysinfo">System Information</uri>. PCMCIA-users should read the
398 swift 1.3 following topic on PCMCIA.
399     </p>
400    
401     </body>
402     </subsection>
403 neysx 1.79 <subsection test="func:keyval('arch')='AMD64' or func:keyval('arch')='x86' or substring(func:keyval('arch'),1,3)='PPC'">
404 swift 1.3 <title>Optional: Get PCMCIA Working</title>
405     <body>
406    
407     <p>
408 nightmorph 1.90 PCMCIA users should first install the <c>pcmciautils</c> package.
409 swift 1.3 </p>
410    
411 nightmorph 1.90 <pre caption="Installing pcmciautils">
412     # <i>emerge pcmciautils</i>
413 swift 1.3 </pre>
414    
415     </body>
416     </subsection>
417 swift 1.2 </section>
418 neysx 1.79
419     <section id="sysinfo">
420 swift 1.1 <title>System Information</title>
421 swift 1.41 <subsection>
422     <title>Root Password</title>
423     <body>
424    
425     <p>
426     First we set the root password by typing:
427     </p>
428    
429     <pre caption="Setting the root password">
430     # <i>passwd</i>
431     </pre>
432    
433     </body>
434     </subsection>
435     <subsection>
436     <title>System Information</title>
437 swift 1.1 <body>
438    
439     <p>
440 swift 1.3 Gentoo uses <path>/etc/rc.conf</path> for general, system-wide configuration.
441     Open up <path>/etc/rc.conf</path> and enjoy all the comments in that file :)
442     </p>
443    
444     <pre caption="Opening /etc/rc.conf">
445     # <i>nano -w /etc/rc.conf</i>
446     </pre>
447    
448     <p>
449 fox2mike 1.67 When you're finished configuring <path>/etc/rc.conf</path>, save and exit.
450     </p>
451    
452     <p>
453 swift 1.3 As you can see, this file is well commented to help you set up the necessary
454 neysx 1.69 configuration variables. You can configure your system to use unicode and
455     define your default editor and your display manager (like gdm or kdm).
456 fox2mike 1.67 </p>
457    
458     <p>
459     Gentoo uses <path>/etc/conf.d/keymaps</path> to handle keyboard configuration.
460     Edit it to configure your keyboard.
461     </p>
462    
463     <pre caption="Opening /etc/conf.d/keymaps">
464     # <i>nano -w /etc/conf.d/keymaps</i>
465     </pre>
466    
467     <p>
468     Take special care with the <c>KEYMAP</c> variable. If you select the wrong
469     <c>KEYMAP</c>, you will get weird results when typing on your keyboard.
470 swift 1.16 </p>
471    
472 neysx 1.79 <note test="substring(func:keyval('arch'),1,3)='PPC'">
473 nightmorph 1.101 PPC uses x86 keymaps on most systems.
474 swift 1.16 </note>
475    
476     <p>
477 fox2mike 1.67 When you're finished configuring <path>/etc/conf.d/keymaps</path>, save and
478     exit.
479     </p>
480    
481     <p>
482     Gentoo uses <path>/etc/conf.d/clock</path> to set clock options. Edit it
483     according to your needs.
484 swift 1.29 </p>
485    
486 fox2mike 1.67 <pre caption="Opening /etc/conf.d/clock">
487     # <i>nano -w /etc/conf.d/clock</i>
488     </pre>
489    
490 swift 1.29 <p>
491 nightmorph 1.82 If your hardware clock is not using UTC, you need to add <c>CLOCK="local"</c>
492     to the file. Otherwise you will notice some clock skew.
493 swift 1.61 </p>
494    
495     <p>
496 nightmorph 1.93 You should define the timezone that you previously copied to
497     <path>/etc/localtime</path> so that further upgrades of the
498     <c>sys-libs/timezone-data</c> package can update <path>/etc/localtime</path>
499     automatically. For instance, if you used the GMT timezone, you would add
500 nightmorph 1.97 <c>TIMEZONE="GMT"</c>
501 nightmorph 1.93 </p>
502    
503     <p>
504 fox2mike 1.67 When you're finished configuring <path>/etc/conf.d/clock</path>, save and
505     exit.
506 swift 1.59 </p>
507    
508 neysx 1.79 <p test="not(func:keyval('arch')='PPC64')">
509     Please continue with <uri link="?part=1&amp;chap=9">Installing Necessary System
510     Tools</uri>.
511 swift 1.59 </p>
512    
513     </body>
514     </subsection>
515 neysx 1.79 <subsection test="func:keyval('arch')='PPC64'">
516 swift 1.59 <title>Configuring the Console</title>
517     <body>
518    
519     <p>
520 neysx 1.79 If you are using a virtual console, you must uncomment the appropriate line in
521     <path>/etc/inittab</path> for the virtual console to spawn a login prompt.
522 swift 1.59 </p>
523    
524 swift 1.70 <pre caption="Enabling hvc or hvsi support in /etc/inittab">
525     hvc0:12345:respawn:/sbin/agetty -L 9600 hvc0
526     hvsi:12345:respawn:/sbin/agetty -L 19200 hvsi0
527 swift 1.59 </pre>
528    
529     <p>
530 swift 1.70 You should also take this time to verify that the appropriate console is
531 jkt 1.71 listed in <path>/etc/securetty</path>.
532 swift 1.70 </p>
533    
534     <p>
535 swift 1.59 You may now continue with <uri link="?part=1&amp;chap=9">Installing Necessary
536     System Tools</uri>.
537 swift 1.1 </p>
538    
539     </body>
540 swift 1.41 </subsection>
541 swift 1.1 </section>
542 swift 1.2 </sections>

  ViewVC Help
Powered by ViewVC 1.1.20