/[gentoo]/xml/htdocs/doc/en/handbook/hb-install-x86+amd64-kernel.xml
Gentoo

Diff of /xml/htdocs/doc/en/handbook/hb-install-x86+amd64-kernel.xml

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

Revision 1.12 Revision 1.25
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-x86+amd64-kernel.xml,v 1.12 2007/05/20 04:16:25 nightmorph Exp $ --> 7<!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/en/handbook/hb-install-x86+amd64-kernel.xml,v 1.25 2008/05/19 09:10:06 nightmorph Exp $ -->
8 8
9<sections> 9<sections>
10 10
11<abstract> 11<abstract>
12The Linux kernel is the core of every distribution. This chapter 12The Linux kernel is the core of every distribution. This chapter
13explains how to configure your kernel. 13explains how to configure your kernel.
14</abstract> 14</abstract>
15 15
16<version>5.2</version> 16<version>6.3</version>
17<date>2007-05-19</date> 17<date>2008-05-19</date>
18 18
19<section> 19<section>
20<title>Timezone</title> 20<title>Timezone</title>
21<body> 21<body>
22 22
33# <i>ls /usr/share/zoneinfo</i> 33# <i>ls /usr/share/zoneinfo</i>
34<comment>(Suppose you want to use GMT)</comment> 34<comment>(Suppose you want to use GMT)</comment>
35# <i>cp /usr/share/zoneinfo/GMT /etc/localtime</i> 35# <i>cp /usr/share/zoneinfo/GMT /etc/localtime</i>
36</pre> 36</pre>
37 37
38<p>
39Next, define the timezone you just used in <path>/etc/conf.d/clock</path> so
40that further upgrades of the <c>sys-libs/timezone-data</c> package can update
41<path>/etc/localtime</path> automatically.
42</p>
43
44<pre caption="Setting the TIMEZONE variable in /etc/conf.d/clock">
45# <i>nano -w /etc/conf.d/clock</i>
46TIMEZONE="GMT"
47</pre>
48
49</body> 38</body>
50</section> 39</section>
51<section> 40<section>
52<title>Installing the Sources</title> 41<title>Installing the Sources</title>
53<subsection> 42<subsection>
60users several possible kernel sources. A full listing with description is 49users several possible kernel sources. A full listing with description is
61available at the <uri link="/doc/en/gentoo-kernel.xml">Gentoo Kernel 50available at the <uri link="/doc/en/gentoo-kernel.xml">Gentoo Kernel
62Guide</uri>. 51Guide</uri>.
63</p> 52</p>
64 53
65<p test="func:keyval('arch')='x86'">
66For x86-based systems we have, amongst other kernels, <c>gentoo-sources</c>
67(kernel source patched with performance-enhancing features).
68</p> 54<p>
69 55For <keyval id="arch"/>-based systems we have <c>gentoo-sources</c>
70<p test="func:keyval('arch')='AMD64'"> 56(kernel source patched for extra features).
71For AMD64-based systems we have <c>gentoo-sources</c> (kernel source patched
72with amd64 specific fixes for stability, performance and hardware support).
73</p> 57</p>
74 58
75<p> 59<p>
76Choose your kernel source and install it using <c>emerge</c>. 60Choose your kernel source and install it using <c>emerge</c>.
77</p> 61</p>
154<subsection> 138<subsection>
155<title>Activating Required Options</title> 139<title>Activating Required Options</title>
156<body> 140<body>
157 141
158<p> 142<p>
159First of all, activate the use of development and experimental code/drivers.
160You need this, otherwise some very important code/drivers won't show up:
161</p>
162
163<pre caption="Selecting experimental code/drivers">
164Code maturity level options ---&gt;
165 [*] Prompt for development and/or incomplete code/drivers
166</pre>
167
168<p>
169Make sure that every driver that is vital to the booting of your system (such as 143Make sure that every driver that is vital to the booting of your system (such as
170SCSI controller, ...) is compiled <e>in</e> the kernel and not as a module, 144SCSI controller, ...) is compiled <e>in</e> the kernel and not as a module,
171otherwise your system will not be able to boot completely. 145otherwise your system will not be able to boot completely.
172</p> 146</p>
173 147
177<p> 151<p>
178We shall then select the exact processor type. The x86_64 kernel maintainer 152We shall then select the exact processor type. The x86_64 kernel maintainer
179strongly recommends users enable MCE features so that they are able to be 153strongly recommends users enable MCE features so that they are able to be
180notified of any hardware problems. On x86_64, these errors are not printed to 154notified of any hardware problems. On x86_64, these errors are not printed to
181<c>dmesg</c> like on other architectures, but to <path>/dev/mcelog</path>. This 155<c>dmesg</c> like on other architectures, but to <path>/dev/mcelog</path>. This
182requires the <c>app-admin/mcelog</c> package. 156requires the <c>app-admin/mcelog</c> package. Make sure you select IA32
157Emulation if you want to be able to run 32-bit programs. Gentoo will install a
158multilib system (mixed 32-bit/64-bit computing) by default, so you probably
159want this option.
183</p> 160</p>
184 161
185<pre caption="Selecting processor type and features"> 162<pre caption="Selecting processor type and features">
186Processor type and features ---> 163Processor type and features --->
187 [ ] Intel MCE Features 164 [ ] Intel MCE Features
188 [ ] AMD MCE Features 165 [ ] AMD MCE Features
189 Processor family (AMD-Opteron/Athlon64) ---> 166 Processor family (AMD-Opteron/Athlon64) --->
190 ( ) AMD-Opteron/Athlon64 167 ( ) AMD-Opteron/Athlon64
191 ( ) Intel EM64T 168 ( ) Intel EM64T
192 ( ) Generic-x86-64 169 ( ) Generic-x86-64
170Executable file formats / Emulations --->
171 [*] IA32 Emulation
193</pre> 172</pre>
194 173
195</body> 174</body>
196<body test="func:keyval('arch')='x86'"> 175<body test="func:keyval('arch')='x86'">
197 176
212Now go to <c>File Systems</c> and select support for the filesystems you use. 191Now go to <c>File Systems</c> and select support for the filesystems you use.
213<e>Don't</e> compile them as modules, otherwise your Gentoo system will not be 192<e>Don't</e> compile them as modules, otherwise your Gentoo system will not be
214able to mount your partitions. Also select <c>Virtual memory</c> and <c>/proc 193able to mount your partitions. Also select <c>Virtual memory</c> and <c>/proc
215file system</c>. 194file system</c>.
216</p> 195</p>
217
218</body>
219<body test="func:keyval('arch')='x86'">
220 196
221<pre caption="Selecting necessary file systems"> 197<pre caption="Selecting necessary file systems">
222File systems ---&gt; 198File systems ---&gt;
223 Pseudo Filesystems ---&gt; 199 Pseudo Filesystems ---&gt;
224 [*] /proc file system support 200 [*] /proc file system support
230 &lt;*&gt; JFS filesystem support 206 &lt;*&gt; JFS filesystem support
231 &lt;*&gt; Second extended fs support 207 &lt;*&gt; Second extended fs support
232 &lt;*&gt; XFS filesystem support 208 &lt;*&gt; XFS filesystem support
233</pre> 209</pre>
234 210
235</body>
236<body test="func:keyval('arch')='AMD64'">
237
238<pre caption="Selecting necessary file systems">
239File systems ---&gt;
240 Pseudo Filesystems ---&gt;
241 [*] /proc file system support
242 [*] Virtual memory file system support (former shm fs)
243
244<comment>(Select one or more of the following options as needed by your system)</comment>
245 &lt;*&gt; Reiserfs support
246 &lt;*&gt; Ext3 journalling file system support
247 &lt;*&gt; JFS filesystem support
248 &lt;*&gt; Second extended fs support
249 &lt;*&gt; XFS filesystem support
250</pre>
251
252</body>
253<body>
254
255<p>
256Do not forget to enable DMA for your drives:
257</p>
258
259<pre caption="Activating DMA">
260Device Drivers ---&gt;
261 ATA/ATAPI/MFM/RLL support ---&gt;
262 [*] Generic PCI bus-master DMA support
263 [*] Use PCI DMA by default when available
264</pre>
265
266<p> 211<p>
267If you are using PPPoE to connect to the Internet or you are using a dial-up 212If you are using PPPoE to connect to the Internet or you are using a dial-up
268modem, you will need the following options in the kernel: 213modem, you will need the following options in the kernel:
269</p> 214</p>
270 215
271<pre caption="Selecting PPPoE necessary drivers" test="func:keyval('arch')='AMD64'"> 216<pre caption="Selecting PPPoE necessary drivers">
272Device Drivers ---&gt; 217Device Drivers ---&gt;
273 Networking Support ---&gt; 218 Networking Support ---&gt;
274 &lt;*&gt; PPP (point-to-point protocol) support 219 &lt;*&gt; PPP (point-to-point protocol) support
275 &lt;*&gt; PPP support for async serial ports 220 &lt;*&gt; PPP support for async serial ports
276 &lt;*&gt; PPP support for sync tty ports 221 &lt;*&gt; PPP support for sync tty ports
277</pre> 222</pre>
278 223
279<pre caption="Selecting PPPoE necessary drivers" test="func:keyval('arch')='x86'">
280Device Drivers ---&gt;
281 Networking support ---&gt;
282 &lt;*&gt; PPP (point-to-point protocol) support
283 &lt;*&gt; PPP support for async serial ports
284 &lt;*&gt; PPP support for sync tty ports
285</pre>
286
287<p> 224<p>
288The two compression options won't harm but are not definitely needed, neither 225The two compression options won't harm but are not definitely needed, neither
289does the <c>PPP over Ethernet</c> option, that might only be used by <c>ppp</c> 226does the <c>PPP over Ethernet</c> option, that might only be used by <c>ppp</c>
290when configured to do kernel mode PPPoE. 227when configured to do kernel mode PPPoE.
291</p> 228</p>
311</pre> 248</pre>
312 249
313<note> 250<note>
314In multi-core systems, each core counts as one processor. 251In multi-core systems, each core counts as one processor.
315</note> 252</note>
253
254<p test="func:keyval('arch')='x86'">
255If you have more than 4GB of RAM, you need to enable "High Memory Support
256(64G)".
257</p>
316 258
317<p> 259<p>
318If you use USB Input Devices (like Keyboard or Mouse) don't forget to enable 260If you use USB Input Devices (like Keyboard or Mouse) don't forget to enable
319those as well: 261those as well:
320</p> 262</p>
465 407
466</body> 408</body>
467</section> 409</section>
468<section id="kernel_modules"> 410<section id="kernel_modules">
469<title>Kernel Modules</title> 411<title>Kernel Modules</title>
412
470<subsection> 413<subsection>
471<title>Configuring the Modules</title> 414<include href="hb-install-kernelmodules.xml"/>
472<body>
473
474<p>
475You should list the modules you want automatically loaded in
476<path>/etc/modules.autoload.d/kernel-2.6</path>. You can add extra options to
477the modules too if you want.
478</p>
479
480<p>
481To view all available modules, run the following <c>find</c> command. Don't
482forget to substitute <c><keyval id="kernel-version"/></c> with the version of
483the kernel you just compiled:
484</p>
485
486<pre caption="Viewing all available modules">
487# <i>find /lib/modules/<keyval id="kernel-version"/>/ -type f -iname '*.o' -or -iname '*.ko'</i>
488</pre>
489
490<p>
491For instance, to automatically load the <c>3c59x.o</c> module, edit the
492<path>kernel-2.6</path> file and enter the module name in it.
493</p>
494
495<pre caption="Editing /etc/modules.autoload.d/kernel-2.6">
496# <i>nano -w /etc/modules.autoload.d/kernel-2.6</i>
497</pre>
498
499<pre caption="/etc/modules.autoload.d/kernel-2.6">
5003c59x
501</pre>
502
503<p>
504Continue the installation with <uri link="?part=1&amp;chap=8">Configuring
505your System</uri>.
506</p>
507
508</body>
509</subsection> 415</subsection>
416
510</section> 417</section>
511</sections> 418</sections>

Legend:
Removed from v.1.12  
changed lines
  Added in v.1.25

  ViewVC Help
Powered by ViewVC 1.1.20