1 |
swift |
1.1 |
<?xml version='1.0' encoding='UTF-8'?> |
2 |
|
|
<!DOCTYPE sections SYSTEM "/dtd/book.dtd"> |
3 |
|
|
|
4 |
|
|
<!-- The content of this document is licensed under the CC-BY-SA license --> |
5 |
|
|
<!-- See http://creativecommons.org/licenses/by-sa/1.0 --> |
6 |
|
|
|
7 |
swift |
1.24 |
<!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/en/handbook/hb-install-alpha-kernel.xml,v 1.23 2005/04/16 21:47:06 swift Exp $ --> |
8 |
swift |
1.1 |
|
9 |
|
|
<sections> |
10 |
swift |
1.11 |
|
11 |
swift |
1.24 |
<version>2.3</version> |
12 |
|
|
<date>2005-06-02</date> |
13 |
swift |
1.11 |
|
14 |
swift |
1.1 |
<section> |
15 |
|
|
<title>Timezone</title> |
16 |
|
|
<body> |
17 |
|
|
|
18 |
|
|
<p> |
19 |
|
|
You first need to select your timezone so that your system knows where it is |
20 |
|
|
located. Look for your timezone in <path>/usr/share/zoneinfo</path>, then make a |
21 |
|
|
symlink to <path>/etc/localtime</path> using <c>ln</c>: |
22 |
|
|
</p> |
23 |
|
|
|
24 |
|
|
<pre caption="Setting the timezone information"> |
25 |
|
|
# <i>ls /usr/share/zoneinfo</i> |
26 |
|
|
<comment>(Suppose you want to use GMT)</comment> |
27 |
|
|
# <i>ln -sf /usr/share/zoneinfo/GMT /etc/localtime</i> |
28 |
|
|
</pre> |
29 |
|
|
|
30 |
|
|
</body> |
31 |
|
|
</section> |
32 |
|
|
<section> |
33 |
|
|
<title>Installing the Sources</title> |
34 |
|
|
<subsection> |
35 |
|
|
<title>Choosing a Kernel</title> |
36 |
|
|
<body> |
37 |
|
|
|
38 |
|
|
<p> |
39 |
|
|
The core around which all distributions are built is the Linux kernel. It is the |
40 |
|
|
layer between the user programs and your system hardware. Gentoo provides its |
41 |
|
|
users several possible kernel sources. A full listing with description is |
42 |
|
|
available at the <uri link="/doc/en/gentoo-kernel.xml">Gentoo Kernel |
43 |
|
|
Guide</uri>. |
44 |
|
|
</p> |
45 |
|
|
|
46 |
|
|
<p> |
47 |
swift |
1.21 |
For alpha-based systems we have <c>vanilla-sources</c> (the default 2.6 kernel source). |
48 |
swift |
1.1 |
</p> |
49 |
|
|
|
50 |
|
|
<p> |
51 |
|
|
Choose your kernel source and install it using <c>emerge</c>. |
52 |
|
|
</p> |
53 |
|
|
|
54 |
|
|
<p> |
55 |
|
|
In the next example we install the <c>vanilla-sources</c>. |
56 |
|
|
Of course substitute with your choice of sources, this is merely an example: |
57 |
|
|
</p> |
58 |
|
|
|
59 |
|
|
<pre caption="Installing a kernel source"> |
60 |
|
|
# <i>emerge vanilla-sources</i> |
61 |
|
|
</pre> |
62 |
|
|
|
63 |
|
|
<p> |
64 |
|
|
When you take a look in <path>/usr/src</path> you should see a symlink called |
65 |
|
|
<path>linux</path> pointing to your kernel source: |
66 |
|
|
</p> |
67 |
|
|
|
68 |
|
|
<pre caption="Viewing the kernel source symlink"> |
69 |
|
|
# <i>ls -l /usr/src/linux</i> |
70 |
swift |
1.21 |
lrwxrwxrwx 1 root root 12 Oct 13 11:04 /usr/src/linux -> linux-2.6.11.2 |
71 |
swift |
1.1 |
</pre> |
72 |
|
|
|
73 |
|
|
<p> |
74 |
|
|
If this isn't the case (i.e. the symlink points to a different kernel source) |
75 |
|
|
change the symlink before you continue: |
76 |
|
|
</p> |
77 |
|
|
|
78 |
|
|
<pre caption="Changing the kernel source symlink"> |
79 |
swift |
1.3 |
# <i>rm /usr/src/linux</i> |
80 |
|
|
# <i>cd /usr/src</i> |
81 |
swift |
1.21 |
# <i>ln -s linux-2.6.11.2 linux</i> |
82 |
swift |
1.1 |
</pre> |
83 |
|
|
|
84 |
|
|
<p> |
85 |
|
|
Now it is time to configure and compile your kernel source. You |
86 |
|
|
can use <c>genkernel</c> for this, which will build a generic kernel as used |
87 |
swift |
1.21 |
by the Installation CD. We explain the "manual" configuration first though, as it is |
88 |
swift |
1.1 |
the best way to optimize your environment. |
89 |
|
|
</p> |
90 |
|
|
|
91 |
|
|
<p> |
92 |
|
|
If you want to manually configure your kernel, continue now with <uri |
93 |
|
|
link="#manual">Default: Manual Configuration</uri>. If you want to use |
94 |
|
|
<c>genkernel</c> you should read <uri link="#genkernel">Alternative: Using |
95 |
|
|
genkernel</uri> instead. |
96 |
|
|
</p> |
97 |
|
|
|
98 |
|
|
</body> |
99 |
|
|
</subsection> |
100 |
|
|
</section> |
101 |
|
|
<section id="manual"> |
102 |
|
|
<title>Default: Manual Configuration</title> |
103 |
|
|
<subsection> |
104 |
|
|
<title>Introduction</title> |
105 |
|
|
<body> |
106 |
|
|
|
107 |
|
|
<p> |
108 |
neysx |
1.7 |
Manually configuring a kernel is often seen as the most difficult procedure a |
109 |
neysx |
1.8 |
Linux user ever has to perform. Nothing is less true -- after configuring a |
110 |
swift |
1.1 |
couple of kernels you don't even remember that it was difficult ;) |
111 |
|
|
</p> |
112 |
|
|
|
113 |
|
|
<p> |
114 |
|
|
However, one thing <e>is</e> true: you must know your system when you start |
115 |
swift |
1.24 |
configuring a kernel manually. Most information can be gathered by emerging |
116 |
|
|
pciutils (<c>emerge pciutils</c>) which contains <c>lscpi</c>. You will now |
117 |
|
|
be able to use <c>lspci</c> within the chrooted environment. You may safely |
118 |
|
|
ignore any <e>pcilib</e> warnings (like pcilib: cannot open |
119 |
|
|
/sys/bus/pci/devices) that <c>lspci</c> throws out. Alternatively, you can run |
120 |
|
|
<c>lscpi</c> from a <e>non-chrooted</e> environment. The results are the same. |
121 |
|
|
You can also run <c>lsmod</c> to see what kernel modules the Installation CD |
122 |
|
|
uses (it might provide you with a nice hint on what to enable). |
123 |
swift |
1.1 |
</p> |
124 |
|
|
|
125 |
|
|
<p> |
126 |
|
|
Now go to your kernel source directory and execute <c>make menuconfig</c>. This |
127 |
|
|
will fire up an ncurses-based configuration menu. |
128 |
|
|
</p> |
129 |
|
|
|
130 |
|
|
<pre caption="Invoking menuconfig"> |
131 |
|
|
# <i>cd /usr/src/linux</i> |
132 |
|
|
# <i>make menuconfig</i> |
133 |
|
|
</pre> |
134 |
|
|
|
135 |
|
|
<p> |
136 |
|
|
You will be greeted with several configuration sections. We'll first list some |
137 |
|
|
options you must activate (otherwise Gentoo will not function, or not function |
138 |
|
|
properly without additional tweaks). |
139 |
|
|
</p> |
140 |
|
|
|
141 |
|
|
</body> |
142 |
|
|
</subsection> |
143 |
|
|
<subsection> |
144 |
|
|
<title>Activating Required Options</title> |
145 |
|
|
<body> |
146 |
|
|
|
147 |
|
|
<p> |
148 |
|
|
First of all, activate the use of development and experimental code/drivers. |
149 |
|
|
You need this, otherwise some very important code/drivers won't show up: |
150 |
|
|
</p> |
151 |
|
|
|
152 |
|
|
<pre caption="Selecting experimental code/drivers"> |
153 |
|
|
Code maturity level options ---> |
154 |
|
|
[*] Prompt for development and/or incomplete code/drivers |
155 |
|
|
</pre> |
156 |
|
|
|
157 |
|
|
<p> |
158 |
|
|
Now go to <c>File Systems</c> and select support for the filesystems you use. |
159 |
|
|
<e>Don't</e> compile them as modules, otherwise your Gentoo system will not be |
160 |
vapier |
1.22 |
able to mount your partitions. Also select <c>Virtual memory</c> and <c>/proc |
161 |
|
|
file system</c>. If you are using a 2.4 kernel, you should also select the |
162 |
|
|
<c>/dev file system</c> and <c>Automatically mount at boot</c> options, and |
163 |
|
|
you should make sure to <c>emerge devfsd</c>. |
164 |
swift |
1.1 |
</p> |
165 |
|
|
|
166 |
|
|
<pre caption="Selecting necessary file systems"> |
167 |
neysx |
1.4 |
<comment>(With a 2.4.x kernel)</comment> |
168 |
swift |
1.1 |
File systems ---> |
169 |
|
|
[*] Virtual memory file system support (former shm fs) |
170 |
|
|
[*] /proc file system support |
171 |
|
|
[*] /dev file system support (EXPERIMENTAL) |
172 |
|
|
[*] Automatically mount at boot |
173 |
neysx |
1.4 |
[ ] /dev/pts file system for Unix98 PTYs |
174 |
swift |
1.1 |
|
175 |
neysx |
1.4 |
<comment>(With a 2.6.x kernel)</comment> |
176 |
|
|
File systems ---> |
177 |
|
|
Pseudo Filesystems ---> |
178 |
|
|
[*] /proc file system support |
179 |
swift |
1.21 |
[ ] /dev file system support (OBSOLETE) |
180 |
neysx |
1.4 |
[*] Virtual memory file system support (former shm fs) |
181 |
swift |
1.1 |
|
182 |
|
|
<comment>(Select one or more of the following options as needed by your system)</comment> |
183 |
|
|
<*> Reiserfs support |
184 |
|
|
<*> Ext3 journalling file system support |
185 |
|
|
<*> JFS filesystem support |
186 |
|
|
<*> Second extended fs support |
187 |
|
|
<*> XFS filesystem support |
188 |
|
|
</pre> |
189 |
|
|
|
190 |
|
|
<p> |
191 |
|
|
If you are using PPPoE to connect to the Internet or you are using a dial-up |
192 |
|
|
modem, you will need the following options in the kernel: |
193 |
|
|
</p> |
194 |
|
|
|
195 |
|
|
<pre caption="Selecting PPPoE necessary drivers"> |
196 |
neysx |
1.4 |
<comment>(With a 2.4.x kernel)</comment> |
197 |
swift |
1.1 |
Network device support ---> |
198 |
|
|
<*> PPP (point-to-point protocol) support |
199 |
|
|
<*> PPP support for async serial ports |
200 |
|
|
<*> PPP support for sync tty ports |
201 |
neysx |
1.4 |
|
202 |
|
|
<comment>(With a 2.6.x kernel)</comment> |
203 |
|
|
Device Drivers ---> |
204 |
|
|
Networking support ---> |
205 |
|
|
<*> PPP (point-to-point protocol) support |
206 |
|
|
<*> PPP support for async serial ports |
207 |
|
|
<*> PPP support for sync tty ports |
208 |
swift |
1.1 |
</pre> |
209 |
|
|
|
210 |
|
|
<p> |
211 |
|
|
The two compression options won't harm but are not definitely needed, neither |
212 |
|
|
does the <c>PPP over Ethernet</c> option, that might only be used by |
213 |
|
|
<c>rp-pppoe</c> when configured to do kernel mode PPPoE. |
214 |
|
|
</p> |
215 |
|
|
|
216 |
|
|
<p> |
217 |
|
|
If you require it, don't forget to include support in the kernel for your |
218 |
|
|
ethernet card. |
219 |
|
|
</p> |
220 |
|
|
|
221 |
|
|
<p> |
222 |
vapier |
1.9 |
The following options are recommended as well: |
223 |
swift |
1.1 |
</p> |
224 |
|
|
|
225 |
vapier |
1.9 |
<pre caption="Recommended Alpha options"> |
226 |
swift |
1.1 |
General setup ---> |
227 |
|
|
<*> SRM environment through procfs |
228 |
|
|
<*> Configure uac policy via sysctl |
229 |
|
|
|
230 |
|
|
Plug and Play configuration ---> |
231 |
|
|
<*> Plug and Play support |
232 |
|
|
<M> ISA Plug and Play support |
233 |
|
|
|
234 |
|
|
SCSI support ---> |
235 |
|
|
SCSI low-level drivers ---> |
236 |
|
|
<*> SYM53C8XX Version 2 SCSI support (NEW) |
237 |
|
|
<*> Qlogic ISP SCSI support |
238 |
|
|
|
239 |
|
|
Network device support ---> |
240 |
|
|
Ethernet (10 or 100 Mbit) ---> |
241 |
|
|
<M> DECchip Tulip (dc21x4x) PCI support |
242 |
|
|
<M> Generic DECchip & DIGITAL EtherWORKS PCI/EISA |
243 |
|
|
<M> EtherExpressPro/100 support (eepro100) |
244 |
|
|
<M> EtherExpressPro/100 support (e100) |
245 |
|
|
Ethernet (1000 Mbit) ---> |
246 |
|
|
<M> Alteon AceNIC |
247 |
|
|
[*] Omit support for old Tigon I |
248 |
|
|
<M> Broadcom Tigon3 |
249 |
|
|
[*] FDDI driver support |
250 |
|
|
<M> Digital DEFEA and DEFPA |
251 |
|
|
<*> PPP support |
252 |
|
|
<*> PPP Deflate compression |
253 |
|
|
|
254 |
|
|
Character devices ---> |
255 |
|
|
[*] Support for console on serial port |
256 |
|
|
[*] Direct Rendering Manager |
257 |
|
|
|
258 |
|
|
File systems ---> |
259 |
|
|
<*> Kernel automounter version 4 support |
260 |
|
|
Network File Systems ---> |
261 |
|
|
<*> NFS |
262 |
|
|
[*] NFSv3 client |
263 |
|
|
<*> NFS server |
264 |
|
|
[*] NFSv3 server |
265 |
|
|
Partition Types ---> |
266 |
|
|
[*] Advanced partition selection |
267 |
|
|
[*] Alpha OSF partition support |
268 |
|
|
Native Language Support |
269 |
|
|
<*> NLS ISO 8859-1 |
270 |
|
|
|
271 |
|
|
Sound ---> |
272 |
|
|
<M> Sound card support |
273 |
|
|
<M> OSS sound modules |
274 |
|
|
[*] Verbose initialisation |
275 |
|
|
[*] Persistent DMA buffers |
276 |
|
|
<M> 100% Sound Blaster compatibles |
277 |
|
|
</pre> |
278 |
|
|
|
279 |
|
|
<p> |
280 |
|
|
When you've finished configuring the kernel, continue with <uri |
281 |
|
|
link="#compiling">Compiling and Installing</uri>. |
282 |
|
|
</p> |
283 |
|
|
|
284 |
|
|
</body> |
285 |
|
|
</subsection> |
286 |
|
|
<subsection id="compiling"> |
287 |
|
|
<title>Compiling and Installing</title> |
288 |
|
|
<body> |
289 |
|
|
|
290 |
|
|
<p> |
291 |
|
|
Now that your kernel is configured, it is time to compile and install it. Exit |
292 |
swift |
1.20 |
the configuration and start the compilation process: |
293 |
swift |
1.1 |
</p> |
294 |
|
|
|
295 |
|
|
<pre caption="Compiling the kernel"> |
296 |
|
|
<comment>(For 2.4 kernel)</comment> |
297 |
|
|
# <i>make dep && make vmlinux modules modules_install</i> |
298 |
|
|
|
299 |
|
|
<comment>(For 2.6 kernel)</comment> |
300 |
|
|
# <i>make && make modules_install</i> |
301 |
vapier |
1.6 |
|
302 |
|
|
<comment>(For all kernels)</comment> |
303 |
|
|
# <i>make boot</i> |
304 |
swift |
1.1 |
</pre> |
305 |
|
|
|
306 |
|
|
<p> |
307 |
neysx |
1.7 |
When the kernel has finished compiling, copy the kernel image to |
308 |
swift |
1.1 |
<path>/boot</path>. In the next example we assume you have configured and |
309 |
swift |
1.21 |
compiled <c>vanilla-sources-2.6.11.2</c>; recent kernels might create |
310 |
swift |
1.10 |
<path>vmlinux</path> instead of <path>vmlinux.gz</path>. |
311 |
swift |
1.1 |
</p> |
312 |
|
|
|
313 |
|
|
<pre caption="Installing the kernel"> |
314 |
vapier |
1.6 |
# <i>cp arch/alpha/boot/vmlinux.gz /boot/</i> |
315 |
swift |
1.21 |
# <i>cp System.map /boot/System.map-2.6.11.2</i> |
316 |
swift |
1.1 |
</pre> |
317 |
|
|
|
318 |
|
|
<p> |
319 |
|
|
It is also wise to copy over your kernel configuration file to |
320 |
|
|
<path>/boot</path>, just in case :) |
321 |
|
|
</p> |
322 |
|
|
|
323 |
|
|
<pre caption="Backing up your kernel configuration"> |
324 |
swift |
1.21 |
# <i>cp .config /boot/config-2.6.11.2</i> |
325 |
swift |
1.1 |
</pre> |
326 |
|
|
|
327 |
|
|
<p> |
328 |
|
|
Now continue with <uri link="#kernel_modules">Installing Separate Kernel |
329 |
|
|
Modules</uri>. |
330 |
|
|
</p> |
331 |
|
|
|
332 |
|
|
</body> |
333 |
|
|
</subsection> |
334 |
|
|
</section> |
335 |
|
|
<section id="genkernel"> |
336 |
|
|
<title>Alternative: Using genkernel</title> |
337 |
|
|
<body> |
338 |
|
|
|
339 |
|
|
<p> |
340 |
|
|
If you are reading this section, you have chosen to use our <c>genkernel</c> |
341 |
|
|
script to configure your kernel for you. |
342 |
|
|
</p> |
343 |
|
|
|
344 |
|
|
<p> |
345 |
|
|
Now that your kernel source tree is installed, it's now time to compile your |
346 |
|
|
kernel by using our <c>genkernel</c> script to automatically build a kernel for |
347 |
|
|
you. <c>genkernel</c> works by configuring a kernel nearly identically to the |
348 |
swift |
1.21 |
way our Installation CD kernel is configured. This means that when you use |
349 |
swift |
1.1 |
<c>genkernel</c> to build your kernel, your system will generally detect all |
350 |
swift |
1.21 |
your hardware at boot-time, just like our Installation CD does. Because genkernel |
351 |
swift |
1.1 |
doesn't require any manual kernel configuration, it is an ideal solution for |
352 |
|
|
those users who may not be comfortable compiling their own kernels. |
353 |
|
|
</p> |
354 |
|
|
|
355 |
|
|
<p> |
356 |
|
|
Now, let's see how to use genkernel. First, emerge the genkernel ebuild: |
357 |
|
|
</p> |
358 |
|
|
|
359 |
|
|
<pre caption="Emerging genkernel"> |
360 |
|
|
# <i>emerge genkernel</i> |
361 |
|
|
</pre> |
362 |
|
|
|
363 |
|
|
<p> |
364 |
|
|
Now, compile your kernel sources by running <c>genkernel all</c>. |
365 |
|
|
Be aware though, as <c>genkernel</c> compiles a kernel that supports almost all |
366 |
|
|
hardware, this compilation will take quite a while to finish! |
367 |
|
|
</p> |
368 |
|
|
|
369 |
|
|
<p> |
370 |
|
|
Note that, if your boot partition doesn't use ext2 or ext3 as filesystem you |
371 |
|
|
need to manually configure your kernel using <c>genkernel --menuconfig all</c> |
372 |
|
|
and add support for your filesystem <e>in</e> the kernel (i.e. <e>not</e> as a |
373 |
|
|
module). |
374 |
|
|
</p> |
375 |
|
|
|
376 |
|
|
<pre caption="Running genkernel"> |
377 |
|
|
# <i>genkernel all</i> |
378 |
|
|
GenKernel v3.0.1_beta10 |
379 |
|
|
* ARCH: Alpha |
380 |
swift |
1.21 |
* KERNEL VER: 2.6.11.2 |
381 |
swift |
1.1 |
* kernel: configuring source |
382 |
|
|
* kernel: running mrproper |
383 |
|
|
<comment>(Output removed to increase readability)</comment> |
384 |
|
|
* Kernel compiled successfully! |
385 |
|
|
* Required Kernel Params: |
386 |
|
|
* : root=/dev/ram0 init=/linuxrc real_root=/dev/$ROOT |
387 |
|
|
* where $ROOT is the devicenode for your root partition as |
388 |
|
|
* you should have specified in /etc/fstab |
389 |
|
|
* |
390 |
|
|
* You MUST tell your bootloader to use the generated initrd |
391 |
|
|
* |
392 |
|
|
* Recommended Kernel Params: |
393 |
|
|
* : vga=0x317 splash=verbose |
394 |
|
|
* |
395 |
|
|
* Do NOT report kernel bugs (configs included) as genkernel bugs. |
396 |
|
|
* Make sure you have the latest genkernel before reporting bugs |
397 |
|
|
* |
398 |
|
|
* For more info see /usr/share/genkernel/README |
399 |
|
|
</pre> |
400 |
|
|
|
401 |
|
|
<p> |
402 |
|
|
Once <c>genkernel</c> completes, a kernel, full set of modules and |
403 |
|
|
<e>initial root disk</e> (initrd) will be created. We will use the kernel |
404 |
|
|
and initrd when configuring a boot loader later in this document. Write |
405 |
|
|
down the names of the kernel and initrd as you will need it when writing |
406 |
|
|
the bootloader configuration file. The initrd will be started immediately after |
407 |
swift |
1.21 |
booting to perform hardware autodetection (just like on the Installation CD) before |
408 |
swift |
1.1 |
your "real" system starts up. |
409 |
|
|
</p> |
410 |
|
|
|
411 |
|
|
<pre caption="Checking the created kernel image name and initrd"> |
412 |
|
|
# <i>ls /boot/kernel* /boot/initrd*</i> |
413 |
|
|
</pre> |
414 |
|
|
|
415 |
|
|
<p> |
416 |
swift |
1.21 |
Now, let's perform one more step to get our system to be more like the Installation CD -- let's emerge <c>coldplug</c>. While the initrd autodetects hardware that |
417 |
swift |
1.14 |
is needed to boot your system, <c>coldplug</c> autodetects everything else. |
418 |
|
|
To emerge and enable <c>coldplug</c>, type the following: |
419 |
swift |
1.1 |
</p> |
420 |
|
|
|
421 |
swift |
1.14 |
<pre caption="Emerging and enabling coldplug"> |
422 |
|
|
# <i>emerge coldplug</i> |
423 |
swift |
1.17 |
# <i>rc-update add coldplug boot</i> |
424 |
|
|
</pre> |
425 |
|
|
|
426 |
|
|
<p> |
427 |
|
|
If you want your system to react to hotplugging events, you would need to |
428 |
|
|
install and setup hotplug as well: |
429 |
|
|
</p> |
430 |
|
|
|
431 |
|
|
<pre caption="Emerging and enabling hotplug"> |
432 |
|
|
# <i>emerge hotplug</i> |
433 |
|
|
# <i>rc-update add hotplug default</i> |
434 |
swift |
1.1 |
</pre> |
435 |
|
|
|
436 |
|
|
</body> |
437 |
|
|
</section> |
438 |
|
|
<section id="kernel_modules"> |
439 |
|
|
<title>Installing Separate Kernel Modules</title> |
440 |
|
|
<subsection> |
441 |
|
|
<title>Installing Extra Modules</title> |
442 |
|
|
<body> |
443 |
|
|
|
444 |
|
|
<p> |
445 |
|
|
If appropriate, you should emerge ebuilds for any additional hardware that is |
446 |
|
|
on your system. Here is a list of kernel-related ebuilds that you could emerge: |
447 |
|
|
</p> |
448 |
|
|
|
449 |
|
|
<table> |
450 |
|
|
<tcolumn width="1in"/> |
451 |
|
|
<tcolumn width="4in"/> |
452 |
|
|
<tcolumn width="2in"/> |
453 |
|
|
<tr> |
454 |
|
|
<th>Ebuild</th> |
455 |
|
|
<th>Purpose</th> |
456 |
|
|
<th>Command</th> |
457 |
|
|
</tr> |
458 |
|
|
<tr> |
459 |
swift |
1.21 |
<ti>x11-drm</ti> |
460 |
swift |
1.1 |
<ti> |
461 |
|
|
Accelerated graphics for ATI Radeon up to 9200, Rage128, Matrox, Voodoo and |
462 |
swift |
1.21 |
other cards for xorg-x11. Please check the <c>IUSE_VIDEO_CARDS</c> variable |
463 |
|
|
in the <path>/usr/portage/x11-base/x11-drm</path> ebuilds to see what you |
464 |
|
|
need to fill in as <c>yourcard</c>. |
465 |
swift |
1.1 |
</ti> |
466 |
swift |
1.21 |
<ti><c>VIDEO_CARDS="yourcard" emerge x11-drm</c></ti> |
467 |
swift |
1.1 |
</tr> |
468 |
|
|
</table> |
469 |
|
|
|
470 |
|
|
<p> |
471 |
|
|
Beware though, some of these ebuilds might deal with big dependencies. To verify |
472 |
|
|
what packages will be installed by emerging an ebuild, use <c>emerge |
473 |
swift |
1.21 |
--pretend</c>. For instance, for the <c>x11-drm</c> package: |
474 |
swift |
1.1 |
</p> |
475 |
|
|
|
476 |
|
|
<pre caption="View full installation package listing"> |
477 |
swift |
1.21 |
# <i>emerge --pretend x11-drm</i> |
478 |
swift |
1.1 |
</pre> |
479 |
|
|
|
480 |
|
|
</body> |
481 |
|
|
</subsection> |
482 |
|
|
<subsection> |
483 |
|
|
<title>Configuring the Modules</title> |
484 |
|
|
<body> |
485 |
|
|
|
486 |
|
|
<p> |
487 |
|
|
You should list the modules you want automatically loaded in |
488 |
|
|
<path>/etc/modules.autoload.d/kernel-2.4</path> (or <path>kernel-2.6</path>). |
489 |
|
|
You can add extra options to the modules too if you want. |
490 |
|
|
</p> |
491 |
|
|
|
492 |
|
|
<p> |
493 |
|
|
To view all available modules, run the following <c>find</c> command. Don't |
494 |
|
|
forget to substitute "<kernel version>" with the version of the kernel you |
495 |
|
|
just compiled: |
496 |
|
|
</p> |
497 |
|
|
|
498 |
|
|
<pre caption="Viewing all available modules"> |
499 |
|
|
# <i>find /lib/modules/<kernel version>/ -type f -iname '*.o' -or -iname '*.ko'</i> |
500 |
|
|
</pre> |
501 |
|
|
|
502 |
|
|
<p> |
503 |
|
|
For instance, to automatically load the <c>3c59x.o</c> module, edit the |
504 |
|
|
<path>kernel-2.4</path> or <path>kernel-2.6</path> file and enter the module |
505 |
|
|
name in it. |
506 |
|
|
</p> |
507 |
|
|
|
508 |
|
|
<pre caption="Editing /etc/modules.autoload.d/kernel-2.4"> |
509 |
|
|
<comment>(Example for 2.4 kernels)</comment> |
510 |
|
|
# <i>nano -w /etc/modules.autoload.d/kernel-2.4</i> |
511 |
|
|
</pre> |
512 |
|
|
|
513 |
|
|
<pre caption="/etc/modules.autoload.d/kernel-2.4 or kernel-2.6"> |
514 |
|
|
3c59x |
515 |
|
|
</pre> |
516 |
|
|
|
517 |
|
|
<p> |
518 |
|
|
Continue the installation with <uri link="?part=1&chap=8">Configuring |
519 |
|
|
your System</uri>. |
520 |
|
|
</p> |
521 |
|
|
|
522 |
|
|
</body> |
523 |
|
|
</subsection> |
524 |
|
|
</section> |
525 |
|
|
</sections> |