1 |
<?xml version='1.0' encoding="UTF-8"?> |
2 |
<!DOCTYPE guide SYSTEM "/dtd/guide.dtd"> |
3 |
|
4 |
<!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/en/migration-to-2.6.xml,v 1.9 2005/01/16 15:27:30 swift Exp $ --> |
5 |
|
6 |
<guide link="/doc/en/migration-to-2.6.xml"> |
7 |
|
8 |
<title>The complete Gentoo Linux 2.6 migration guide</title> |
9 |
|
10 |
<author title="Author"> |
11 |
<mail link="dsd@gentoo.org">Daniel Drake</mail> |
12 |
</author> |
13 |
<author title="Contributor"> |
14 |
<mail link="sergey_zlodey@mail.ru">Sergey Galkin</mail> |
15 |
</author> |
16 |
<author title="Contributor"> |
17 |
<mail link="svyatogor@gentoo.org">Sergey Kuleshov</mail> |
18 |
</author> |
19 |
<author title="Editor"> |
20 |
<mail link="neysx@gentoo.org">Xavier Neys</mail> |
21 |
</author> |
22 |
<author title="Editor"> |
23 |
<mail link="bennyc@gentoo.org">Benny Chuang</mail> |
24 |
</author> |
25 |
|
26 |
<abstract> |
27 |
This document will aid you in the process of migrating from Linux 2.4 to Linux |
28 |
2.6, devfs to udev, OSS to ALSA, and LVM to LVM2. |
29 |
</abstract> |
30 |
|
31 |
<version>0.2.1</version> |
32 |
<date>2005-01-11</date> |
33 |
|
34 |
<chapter> |
35 |
<title>Introduction</title> |
36 |
|
37 |
<section> |
38 |
<title>Status of this document</title> |
39 |
<body> |
40 |
|
41 |
<p> |
42 |
The migration processes described in this document are not minor changes. This |
43 |
document is in early stages and may be missing some details but hopefully the |
44 |
main things have been covered. If you do try a migration, please <uri |
45 |
link="http://bugs.gentoo.org">report</uri> any problem you might encounter so |
46 |
that we can refine this guide. |
47 |
</p> |
48 |
|
49 |
<p> |
50 |
We are planning on making Linux 2.6 the default kernel for when 2005.0 is |
51 |
released (for some arch's). At the same time, we will encourage all existing |
52 |
users of those arch's to upgrade to Linux 2.6, as many will still be running |
53 |
2.4. Your feedback on this document is much appreciated, so that when this |
54 |
time comes, the document can be in good shape for the mass-migration. |
55 |
</p> |
56 |
|
57 |
</body> |
58 |
</section> |
59 |
|
60 |
<section> |
61 |
<title>Whats new in Linux 2.6?</title> |
62 |
<body> |
63 |
|
64 |
<p> |
65 |
That is no easy question to answer. Linux 2.6 is the result of over 2 years |
66 |
of rapid development and stabilisation of new features, and is architectually |
67 |
quite different from its 2.4 counterpart. Some of the more major changes are |
68 |
listed below: |
69 |
</p> |
70 |
|
71 |
<ul> |
72 |
<li> |
73 |
Scheduler/Interactivity improvements: Linux feels very smooth on desktop |
74 |
systems and copes much better than 2.4 while under load |
75 |
</li> |
76 |
<li> |
77 |
Scalability: Linux now scales much better at both ends - on small embedded |
78 |
devices and also systems with many processors |
79 |
</li> |
80 |
<li>Performance: Throughput from common applications is much improved</li> |
81 |
<li> |
82 |
Hardware support: Linux now supports many more architectures and hardware |
83 |
devices out-of-the-box than any other operating system. |
84 |
</li> |
85 |
</ul> |
86 |
|
87 |
<p> |
88 |
Joseph Pranevich has written a very detailed document, <uri |
89 |
link="http://www.kniggit.net/wwol26.html">The Wonderful World Of Linux |
90 |
2.6</uri> which you may be interested to glance over. If you are interested in |
91 |
the more technical details, you can refer to <uri |
92 |
link="http://www.linux.org.uk/~davej/docs/post-halloween-2.6.txt">The |
93 |
post-halloween document</uri> - but bear in mind that this is somewhat outdated |
94 |
now. |
95 |
</p> |
96 |
|
97 |
</body> |
98 |
</section> |
99 |
<section> |
100 |
<title>What is udev?</title> |
101 |
<body> |
102 |
|
103 |
<p> |
104 |
In the past, Gentoo has instructed users to use <e>devfs</e> for managing the |
105 |
/dev directory, which contains a series of device interfaces to allow system |
106 |
applications to communicate with hardware (through the kernel). |
107 |
</p> |
108 |
|
109 |
<p> |
110 |
<e>devfs</e>, whilst a good concept, has some internal problems, and has been |
111 |
marked obselete in Linux 2.6. |
112 |
</p> |
113 |
|
114 |
<p> |
115 |
<e>udev</e> is the new way of managing device nodes. It addresses issues with |
116 |
previous device managers, and also attempts to solve some other problems. |
117 |
</p> |
118 |
|
119 |
<p> |
120 |
The above may not mean much to you, but fear not, the hard working Gentoo |
121 |
developers have put effort into making the migration from devfs very easy. |
122 |
</p> |
123 |
|
124 |
</body> |
125 |
</section> |
126 |
<section> |
127 |
<title>What is ALSA?</title> |
128 |
<body> |
129 |
|
130 |
<p> |
131 |
With Linux 2.4, chances are that you used OSS (open sound system) drivers to |
132 |
power your sound card. OSS has been replaced by a newer and better set of sound |
133 |
drivers: ALSA. |
134 |
</p> |
135 |
|
136 |
<p> |
137 |
ALSA, the Advanced Linux Sound Architecture, is a new set of sound drivers with |
138 |
a new and improved API, present in the Linux 2.6 kernel. It is backwards |
139 |
compatible with OSS applications, provided that you select the right kernel |
140 |
configuration options! |
141 |
</p> |
142 |
|
143 |
<note> |
144 |
If you do not have any sound/audio hardware, you can safely skip over any |
145 |
ALSA-related instructions in this document. |
146 |
</note> |
147 |
|
148 |
</body> |
149 |
</section> |
150 |
<section> |
151 |
<title>What is LVM?</title> |
152 |
<body> |
153 |
|
154 |
<p> |
155 |
<e>Logical Volume Management</e> (LVM) exists as set of tools allowing you to |
156 |
manage your disk storage in a very flexible manner. Amongst other things, it |
157 |
allows powerful control over partitions (e.g. resizing without reboot), and |
158 |
makes operations like device changes relatively simple. LVM acts as an |
159 |
alternative to standard partition-based disk management. |
160 |
</p> |
161 |
|
162 |
<p> |
163 |
LVM support has historically been implemented in Linux 2.4. Linux 2.6 features |
164 |
a new version of LVM, named <e>LVM2</e>. The migration process requires you to |
165 |
install new versions of the user-level tools (covered later in this document) |
166 |
but will leave your data intact! |
167 |
</p> |
168 |
|
169 |
<p> |
170 |
<e>If you do not currently use LVM for data-storage management, then LVM2 |
171 |
migration does not apply to you.</e> If this is the case, you can safely ignore |
172 |
any parts of this document referencing LVM/LVM2. Upgrading to Linux 2.6 does |
173 |
<e>not</e> require you to store your data on LVM partitions - you can keep |
174 |
your data in the standard partition-format as it always has been. |
175 |
</p> |
176 |
|
177 |
<p> |
178 |
If you are not a LVM user, but you think LVM2 sounds useful for you, you can |
179 |
convert your disks to this format at a later date, by following the |
180 |
<uri link="http://www.gentoo.org/doc/en/lvm2.xml">Gentoo LVM2 Installation |
181 |
Guide</uri>. For now, lets just concentrate on getting a smooth 2.6 migration |
182 |
underway. |
183 |
</p> |
184 |
|
185 |
</body> |
186 |
</section> |
187 |
</chapter> |
188 |
|
189 |
<chapter> |
190 |
<title>Preparation</title> |
191 |
<section> |
192 |
<title>Get your system up-to-date</title> |
193 |
<body> |
194 |
|
195 |
<p> |
196 |
Some of the changes brought in with Linux 2.6 also required some changes in the |
197 |
base system applications. Before continuing, you should ensure that your system |
198 |
is relatively up-to-date, and to be perfectly sure, you should update all world |
199 |
and system packages where updates are available. |
200 |
</p> |
201 |
|
202 |
<p> |
203 |
In particular, make sure you have the latest stable versions of the following |
204 |
packages: |
205 |
</p> |
206 |
|
207 |
<ul> |
208 |
<li><c>sys-apps/baselayout</c></li> |
209 |
<li><c>sys-apps/util-linux</c></li> |
210 |
<li> |
211 |
<c>sys-kernel/genkernel</c> (only if you wish to use genkernel as opposed |
212 |
to manual configuration) |
213 |
</li> |
214 |
</ul> |
215 |
|
216 |
<pre caption="Updating all world packages"> |
217 |
# <i>emerge sync</i> |
218 |
# <i>emerge -ua world</i> |
219 |
</pre> |
220 |
|
221 |
</body> |
222 |
</section> |
223 |
<section> |
224 |
<title>modutils vs module-init-tools</title> |
225 |
<body> |
226 |
|
227 |
<p> |
228 |
<c>sys-apps/modutils</c> is the package that provides tools such as |
229 |
<c>modprobe</c>, <c>rmmod</c> and <c>insmod</c> for Linux 2.4. |
230 |
</p> |
231 |
|
232 |
<p> |
233 |
Linux 2.6 introduces a new module format, and therefore requires new tools for |
234 |
handling modules. These are bundled up into the |
235 |
<c>sys-apps/module-init-tools</c> package. </p> |
236 |
|
237 |
<p> |
238 |
You should now remove modutils and install module-init-tools: |
239 |
</p> |
240 |
|
241 |
<pre caption="Switching from modutils to module-init-tools"> |
242 |
# <i>emerge unmerge sys-apps/modutils</i> |
243 |
# <i>emerge module-init-tools</i> |
244 |
</pre> |
245 |
|
246 |
<note> |
247 |
Don't worry - even though you have just unmerged modutils, module-init-tools |
248 |
provides backwards compatibility for Linux 2.4, so you will still be |
249 |
able to boot into Linux 2.4 and handle modules for that kernel. |
250 |
</note> |
251 |
|
252 |
<note> |
253 |
For the above reason, module-init-tools might already be installed and working |
254 |
with your existing Linux 2.4 kernel. In this case, you don't need to worry |
255 |
about this stage - your system is already ready to deal with Linux 2.6 modules. |
256 |
</note> |
257 |
|
258 |
</body> |
259 |
</section> |
260 |
<section> |
261 |
<title>Installing udev</title> |
262 |
<body> |
263 |
|
264 |
<p> |
265 |
There is no configuration involved here. Simply use <c>emerge</c> to install |
266 |
udev: |
267 |
</p> |
268 |
|
269 |
<pre caption="Installing udev"> |
270 |
# <i>emerge -a udev</i> |
271 |
</pre> |
272 |
|
273 |
<p> |
274 |
You should now read the |
275 |
<uri link="http://www.gentoo.org/doc/en/udev-guide.xml">Gentoo udev |
276 |
Guide</uri> to get a more complete idea about the differences between udev |
277 |
and devfs. |
278 |
</p> |
279 |
|
280 |
</body> |
281 |
</section> |
282 |
<section> |
283 |
<title>Checking for essential device nodes</title> |
284 |
<body> |
285 |
|
286 |
<p> |
287 |
When the system boots up, the system requires some essential device nodes. As |
288 |
udev is not included in the kernel, it is not activated immediately. To work |
289 |
around this, you must ensure that you have some essential device nodes on your |
290 |
disk. |
291 |
</p> |
292 |
|
293 |
<p> |
294 |
Our installation stage files will have created the required devices during the |
295 |
initial installation. However, some users have reported that this is not the |
296 |
case. We will use this opportunity to check that the device files exist, and |
297 |
create them if they do not. |
298 |
</p> |
299 |
|
300 |
<p> |
301 |
As your existing device manager will be mounted at /dev, we cannot access it |
302 |
directly. So we will bind-mount your root partition to another location and |
303 |
access the /dev directory from there. |
304 |
</p> |
305 |
|
306 |
<pre caption="Bind-mounting your root partition and listing static devices"> |
307 |
# <i>mkdir -p /mnt/temp</i> |
308 |
# <i>mount -o bind / /mnt/temp</i> |
309 |
# <i>cd /mnt/temp/dev</i> |
310 |
# <i>ls -l console null</i> |
311 |
</pre> |
312 |
|
313 |
<p> |
314 |
If the above <e>ls</e> command reported that either <c>console</c> or |
315 |
<c>null</c> do not exist, then you must create them yourself, as shown below. |
316 |
</p> |
317 |
|
318 |
<pre caption="Creating the missing console and null nodes"> |
319 |
# <i>mknod -m 660 console c 5 1</i> |
320 |
# <i>mknod -m 660 null c 1 3</i> |
321 |
</pre> |
322 |
|
323 |
<p> |
324 |
You should now unmount your bind-mounted root partition, even if you did not |
325 |
have to create those devices: |
326 |
</p> |
327 |
|
328 |
<pre caption="Unmounting the bind-mounted root"> |
329 |
# <i>cd</i> |
330 |
# <i>umount /mnt/temp</i> |
331 |
# <i>rmdir /mnt/temp</i> |
332 |
</pre> |
333 |
|
334 |
</body> |
335 |
</section> |
336 |
<section> |
337 |
<title>Installing ALSA utilities</title> |
338 |
<body> |
339 |
|
340 |
<p> |
341 |
ALSA requires you to have some packages installed, so that applications can use |
342 |
the ALSA API. These packages will also allow you to control the mixer and |
343 |
volume levels. Install the required utilities as follows: |
344 |
</p> |
345 |
|
346 |
<pre caption="Installing ALSA utilities and libraries"> |
347 |
# <i>emerge -a alsa-lib alsa-utils alsa-tools alsa-headers alsa-oss</i> |
348 |
</pre> |
349 |
|
350 |
</body> |
351 |
</section> |
352 |
</chapter> |
353 |
|
354 |
<chapter> |
355 |
<title>Installing the Linux 2.6 sources</title> |
356 |
|
357 |
<section> |
358 |
<title>Choosing and installing a kernel</title> |
359 |
<body> |
360 |
|
361 |
<p> |
362 |
The first thing you need to do is install sources of a 2.6 kernel of your |
363 |
choice. The two Gentoo-supported 2.6 kernels are currently |
364 |
<e>gentoo-dev-sources</e> (for desktops) and <e>hardened-dev-sources</e> (for |
365 |
servers). There are others available, see the <uri |
366 |
link="/doc/en/gentoo-kernel.xml">Gentoo Linux Kernel Guide</uri> for more |
367 |
choices. |
368 |
</p> |
369 |
|
370 |
<p> |
371 |
In this guide, we'll use <c>gentoo-dev-sources</c> as an example. Install your |
372 |
chosen set of kernel sources using the <c>emerge</c> utility: |
373 |
</p> |
374 |
|
375 |
<pre caption="Installing gentoo-dev-sources"> |
376 |
# <i>emerge -a gentoo-dev-sources</i> |
377 |
These are the packages that I would merge, in order: |
378 |
Calculating dependencies ...done! |
379 |
[ebuild N ] sys-kernel/gentoo-dev-sources-2.6.9-r2 |
380 |
|
381 |
Do you want me to merge these packages? [Yes/No] <i>y</i> |
382 |
</pre> |
383 |
|
384 |
</body> |
385 |
</section> |
386 |
<section> |
387 |
<title>Updating the /usr/src/linux symbolic link</title> |
388 |
<body> |
389 |
|
390 |
<p> |
391 |
Various components of the Gentoo utilities rely on /usr/src/linux being a |
392 |
symbolic link to the kernel sources that you are running (or wish to compile |
393 |
against). |
394 |
</p> |
395 |
|
396 |
<p> |
397 |
We will now update our /usr/src/linux link to point at the kernel sources we |
398 |
just installed. Continuing our example: |
399 |
</p> |
400 |
|
401 |
<pre caption="Updating the /usr/src/linux softlink"> |
402 |
# <i>cd /usr/src</i> |
403 |
# <i>ln -sfn linux-2.6.9-gentoo-r2 linux</i> |
404 |
</pre> |
405 |
|
406 |
</body> |
407 |
</section> |
408 |
</chapter> |
409 |
|
410 |
<chapter id="pitfalls"> |
411 |
<title>Known pitfalls with Linux 2.6 migration</title> |
412 |
<section> |
413 |
<body> |
414 |
|
415 |
<p> |
416 |
Before we get stuck into configuring the kernel, I'll attempt to detail the |
417 |
most common errors that people make when migrating to Linux 2.6, as some of |
418 |
these points will influence the way you configure the new kernel. |
419 |
</p> |
420 |
|
421 |
<note> |
422 |
Not all of these points are relevant at this stage, but I will detail them all |
423 |
here in one place, and you can refer back at your leisure. |
424 |
</note> |
425 |
|
426 |
</body> |
427 |
</section> |
428 |
<section> |
429 |
<title>Don't use "make oldconfig" with a 2.4 .config</title> |
430 |
<body> |
431 |
|
432 |
<note> |
433 |
If you don't understand what this means, don't worry, you won't make this |
434 |
mistake if you follow the rest of this guide correctly. |
435 |
</note> |
436 |
|
437 |
<p> |
438 |
You'll be asked many many questions, since there have been a large amount of |
439 |
changes. Many people who do try a <c>make oldconfig</c> from a 2.4 config end |
440 |
up creating an unworkable kernel (e.g. no output on-screen, no input from |
441 |
keyboard, etc). Please save yourself the trouble, and use the traditional |
442 |
<c>menuconfig</c> configuration method just this once. |
443 |
</p> |
444 |
|
445 |
</body> |
446 |
</section> |
447 |
<section> |
448 |
<title>Don't use ide-scsi for CD/DVD writing</title> |
449 |
<body> |
450 |
|
451 |
<p> |
452 |
In Linux 2.4, the only way to achieve good CD/DVD writing results was to enable |
453 |
the (rather ugly) <c>ide-scsi</c> emulation. Thankfully, the IDE layer in Linux |
454 |
2.6 has been extended to support CD/DVD writers much better. |
455 |
</p> |
456 |
|
457 |
<p> |
458 |
You don't need to enable any extra options to support CD writing. Just be sure |
459 |
<e>not</e> to enable <c>ide-scsi</c> as you used to. |
460 |
</p> |
461 |
|
462 |
</body> |
463 |
</section> |
464 |
<section> |
465 |
<title>PC Speaker is now a configurable option</title> |
466 |
<body> |
467 |
|
468 |
<p> |
469 |
You won't get your normal console beeps (or any response from the PC speaker at |
470 |
all) unless you specifically enable the new PC speaker option |
471 |
(<c>CONFIG_INPUT_PCSPKR</c>): |
472 |
</p> |
473 |
|
474 |
<pre caption="Location of PC speaker option"> |
475 |
Device Drivers ---> |
476 |
Input device support ---> |
477 |
[*] Misc |
478 |
<*> PC Speaker support |
479 |
</pre> |
480 |
|
481 |
<note> |
482 |
By "PC speaker", I am referring to the analogue speaker that beeps once when |
483 |
your system is powering up, I am not referring to normal sound hardware used |
484 |
for playing music, etc. |
485 |
</note> |
486 |
|
487 |
</body> |
488 |
</section> |
489 |
<section> |
490 |
<title>New USB Storage block device driver sometimes problematic</title> |
491 |
<body> |
492 |
|
493 |
<p> |
494 |
Very recently, a new USB storage device driver has been added to the kernel. |
495 |
At the time of writing, this driver ("ub") is still in its early stages and |
496 |
some users find it to be unreliable. If you have problems accessing your USB |
497 |
hard disk, USB flash disk, USB card reader, or USB digital camera, then you |
498 |
could try reverting to the older SCSI-style driver: |
499 |
</p> |
500 |
|
501 |
<pre caption="Disabling ub"> |
502 |
Device Drivers ---> |
503 |
Block devices ---> |
504 |
< > Low Performance USB Block driver |
505 |
</pre> |
506 |
|
507 |
<note> |
508 |
The older SCSI-style driver (USB Mass Storage support) is enabled by default. |
509 |
It can be found under "Device Drivers --> USB support", but will generally |
510 |
not come into effect while ub is also present. |
511 |
</note> |
512 |
|
513 |
</body> |
514 |
</section> |
515 |
<section> |
516 |
<title>usbdevfs renamed to usbfs</title> |
517 |
<body> |
518 |
|
519 |
<p> |
520 |
If you have edited your <path>/etc/fstab</path> file to customise the way that |
521 |
the USB device filesystem gets mounted, you may have to modify the filesystem |
522 |
type from <e>usbdevfs</e> to <e>usbfs</e>. |
523 |
</p> |
524 |
|
525 |
<note> |
526 |
Recent 2.4 kernels will also allow you to use "usbfs" as well as "usbdevfs", so |
527 |
you aren't breaking any backwards compatibility by doing this. |
528 |
</note> |
529 |
|
530 |
</body> |
531 |
</section> |
532 |
<section> |
533 |
<title>Don't renice X</title> |
534 |
<body> |
535 |
|
536 |
<p> |
537 |
If you are a desktop 2.4 user, you may have hacked your system into running X |
538 |
at a higher priority, as in some cases it seems to provide better desktop |
539 |
performance. |
540 |
</p> |
541 |
|
542 |
<p> |
543 |
There have been many scheduler changes in 2.6 which change this behaviour. If |
544 |
you continue to run X at a higher priority, it will do exactly what it is |
545 |
supposed to (run the <e>display server</e> at a very high priority) and you |
546 |
will notice consequences such as sound stuttering and slow application load |
547 |
times because your CPU is spending too long serving X and only X. |
548 |
</p> |
549 |
|
550 |
<p> |
551 |
In Linux 2.6, you no longer need to renice desktop applications to get good |
552 |
interactivity. Please remove your "niceness" hacks! |
553 |
</p> |
554 |
|
555 |
</body> |
556 |
</section> |
557 |
<section> |
558 |
<title>X11 config file should now use /dev/input/mice for PS/2 and USB |
559 |
mice</title> |
560 |
<body> |
561 |
|
562 |
<p> |
563 |
One of the changes that a default udev configuration introduces is different |
564 |
organisation of the mouse device nodes. Previously, you would have had nodes |
565 |
such as <path>/dev/psaux</path> and <path>/dev/mouse</path>. You will now have |
566 |
nodes such as <path>/dev/input/mouse0</path>, <path>/dev/input/mouse1</path>, |
567 |
and a collective <path>/dev/input/mice</path> node which combines movements |
568 |
from all mice. |
569 |
</p> |
570 |
|
571 |
<p> |
572 |
Since the old X configurations typically reference <path>/dev/mouse</path> or |
573 |
<path>/dev/psaux</path> then you may get an error similar to the one shown |
574 |
below when you attempt to start X11: |
575 |
</p> |
576 |
|
577 |
<pre caption="Common error when starting X on a udev system for the first time"> |
578 |
(EE) xf86OpenSerial: Cannot open device /dev/mouse |
579 |
No such file or directory. |
580 |
(EE) Mouse0: cannot open input device |
581 |
(EE) PreInit failed for input device "Mouse0" |
582 |
No core pointer |
583 |
</pre> |
584 |
|
585 |
<p> |
586 |
To correct this, open your X11 config in a text editor, and update the mouse |
587 |
<e>InputDevice</e> section to use the <path>/dev/input/mice</path> device. An |
588 |
example is shown below: |
589 |
</p> |
590 |
|
591 |
<pre caption="Opening your X11 config file"> |
592 |
# <i>nano -w /etc/X11/xorg.conf</i> |
593 |
</pre> |
594 |
|
595 |
<note> |
596 |
If you are still using XFree86, your config file will be |
597 |
<path>/etc/X11/XF86Config</path> |
598 |
</note> |
599 |
|
600 |
<pre caption="Sample mouse InputDevice section"> |
601 |
Section "InputDevice" |
602 |
Identifier "Mouse0" |
603 |
Driver "mouse" |
604 |
Option "Protocol" "auto" |
605 |
Option "Device" "/dev/input/mice" |
606 |
EndSection |
607 |
</pre> |
608 |
|
609 |
</body> |
610 |
</section> |
611 |
<section> |
612 |
<title>New Serial-ATA (SATA) drivers name the devices differently</title> |
613 |
<body> |
614 |
|
615 |
<p> |
616 |
If you used the original Serial ATA drivers under Linux 2.4, you probably |
617 |
observed your SATA devices having names such as <c>/dev/hde</c>. |
618 |
</p> |
619 |
|
620 |
<p> |
621 |
Linux 2.6 introduces some new SATA drivers (libata) which are based on the |
622 |
SCSI subsystem. As these drivers are based on SCSI, your SATA disks will now |
623 |
show up as SCSI devices. Your first SATA disk will be named <c>/dev/sda</c>. |
624 |
You will need to update your <c>/etc/fstab</c> file to reflect this, and you |
625 |
will need to bear this in mind when choosing the root/real_root kernel boot |
626 |
parameter later on. |
627 |
</p> |
628 |
|
629 |
<note> |
630 |
libata has been backported into recent versions of Linux 2.4, so you may |
631 |
already be familiar with the new device naming. |
632 |
</note> |
633 |
|
634 |
</body> |
635 |
</section> |
636 |
<section> |
637 |
<title>bootsplash no longer maintained</title> |
638 |
<body> |
639 |
|
640 |
<p> |
641 |
If you used the <c>gentoo-sources-2.4</c> kernel, you may have used the |
642 |
<e>bootsplash</e> functionality in order to provide yourself with a colourful |
643 |
framebuffer console. |
644 |
</p> |
645 |
|
646 |
<p> |
647 |
The developer of bootsplash appears to have lost interest in his project, given |
648 |
some design problems. However, Gentoo developer <e>Michal Januszewski</e> is |
649 |
developing a successor, <c>gensplash</c>, which in included in the |
650 |
gentoo-dev-sources kernel. You can follow Michals |
651 |
<uri link="http://dev.gentoo.org/~spock/projects/gensplash/archive/gensplash-in-5-easy-steps.txt"> |
652 |
Gensplash in 5 easy steps</uri> document in order to familiarize yourself with |
653 |
how gensplash is operated. |
654 |
</p> |
655 |
|
656 |
</body> |
657 |
</section> |
658 |
<section> |
659 |
<title>I2C drivers now included in the kernel</title> |
660 |
<body> |
661 |
|
662 |
<p> |
663 |
If you use <c>lm-sensors</c> to monitor system temperatures and power levels, |
664 |
you previously needed to install the <c>i2c</c> package in order to provide |
665 |
hardware support. |
666 |
</p> |
667 |
|
668 |
<p> |
669 |
The I2C hardware drivers are now included in the Linux 2.6 kernel, no external |
670 |
i2c package is required. Remember to compile support for your specific I2C |
671 |
devices into the kernel configuration. You will then be able to use |
672 |
<c>lm-sensors</c> as usual. |
673 |
</p> |
674 |
|
675 |
</body> |
676 |
</section> |
677 |
|
678 |
|
679 |
</chapter> |
680 |
|
681 |
<chapter id="conf"> |
682 |
<title>Configuring, building, and installing the kernel</title> |
683 |
<section> |
684 |
<body> |
685 |
|
686 |
<p> |
687 |
As with Linux 2.4, you have two options for managing your new kernel build. |
688 |
</p> |
689 |
|
690 |
<ol> |
691 |
<li> |
692 |
The default method is to configure your kernel manually. This may seem |
693 |
daunting but is the preferred way as long as you know your system. If you |
694 |
wish to configure your new kernel manually, please continue on to the <uri |
695 |
link="#manual">next chapter</uri>. |
696 |
</li> |
697 |
<li> |
698 |
The alternative option is to use our <c>genkernel</c> utility to |
699 |
automatically configure, compile, and install a kernel for you. If you wish |
700 |
to use <c>genkernel</c> then skip over the next chapter and proceed with |
701 |
<uri link="#genkernel">using genkernel</uri>. |
702 |
</li> |
703 |
</ol> |
704 |
|
705 |
</body> |
706 |
</section> |
707 |
</chapter> |
708 |
|
709 |
<chapter id="manual"> |
710 |
<title>Default: Manual configuration</title> |
711 |
<section> |
712 |
<title>Configuring the kernel</title> |
713 |
<body> |
714 |
|
715 |
<p> |
716 |
We'll now get on with configuring the kernel. Open menuconfig in the usual way: |
717 |
</p> |
718 |
|
719 |
<pre caption="Invoking menuconfig"> |
720 |
# <i>cd /usr/src/linux</i> |
721 |
# <i>make menuconfig</i> |
722 |
</pre> |
723 |
|
724 |
<p> |
725 |
You will probably be familiar with using menuconfig from configuring 2.4 |
726 |
kernels. Fortunately, the front end has barely changed at all, but you will |
727 |
observe much better organisation of kernel options, plus <e>many</e> new |
728 |
options that weren't present in 2.4. |
729 |
</p> |
730 |
|
731 |
<p> |
732 |
Be sure to enable the following important kernel options: |
733 |
</p> |
734 |
|
735 |
<pre caption="Required kernel options"> |
736 |
File systems ---> |
737 |
Pseudo Filesystems ---> |
738 |
[*] /proc file system support |
739 |
[*] Virtual memory file system support (former shm fs) |
740 |
|
741 |
<comment>(the following are required for udev):</comment> |
742 |
General setup ---> |
743 |
[*] Support for hot-pluggable devices |
744 |
|
745 |
Device Drivers ---> |
746 |
Block devices ---> |
747 |
<*> RAM disk support |
748 |
|
749 |
<comment>(the following are required for ALSA):</comment> |
750 |
Device Drivers ---> |
751 |
Sound ---> |
752 |
<*> Sound card support |
753 |
Advanced Linux Sound Architecture ---> |
754 |
<M> Advanced Linux Sound Architecture |
755 |
<M> Sequencer support |
756 |
<M> OSS Mixer API |
757 |
[*] OSS Sequencer API |
758 |
<comment> (and dont forget to select your soundcard from the submenus!)</comment> |
759 |
|
760 |
<comment>(the following are required if you use LVM for disk management):</comment> |
761 |
Device Drivers ---> |
762 |
Multi-device support (RAID and LVM) ---> |
763 |
[*] Multiple devices driver support (RAID and LVM) |
764 |
<*> Device mapper support |
765 |
</pre> |
766 |
|
767 |
<warn> |
768 |
Previously you may have included support for the <path>/dev</path> file system |
769 |
(now marked OBSOLETE). Do not enable devfs support. We have installed udev, |
770 |
which we will be using instead of devfs from now on. |
771 |
</warn> |
772 |
|
773 |
<p> |
774 |
Also, remember to enable support for the filesystems that you use, and the |
775 |
hardware present in your system. Be sure to enable support for the IDE |
776 |
controller on your motherboard if you wish to benefit from fast DMA disk |
777 |
access. Refer to the <uri |
778 |
link="/doc/en/handbook/handbook-x86.xml?part=1&chap=7">Configuring the |
779 |
Kernel</uri> section of the <uri link="/doc/en/handbook/index.xml">Gentoo |
780 |
Handbook</uri> for additional guidance here. |
781 |
</p> |
782 |
|
783 |
</body> |
784 |
</section> |
785 |
<section> |
786 |
<title>Building the kernel</title> |
787 |
<body> |
788 |
|
789 |
<p> |
790 |
Now that we have configured the kernel, we can start the compilation process: |
791 |
</p> |
792 |
|
793 |
<pre caption="Compiling the kernel source"> |
794 |
# <i>make && make modules_install</i> |
795 |
</pre> |
796 |
|
797 |
<note> |
798 |
You may recall having to run <c>make dep</c> with Linux 2.4 sources. This is no |
799 |
longer required. |
800 |
</note> |
801 |
|
802 |
<p> |
803 |
Wait for the kernel compilation to complete (and observe the much more readable |
804 |
compilation output). |
805 |
</p> |
806 |
|
807 |
</body> |
808 |
</section> |
809 |
<section> |
810 |
<title>Installing the kernel</title> |
811 |
<body> |
812 |
|
813 |
<p> |
814 |
The next step is mounting your <path>/boot</path> partition and copying the |
815 |
kernel image over. You must then update your bootloader config manually. |
816 |
</p> |
817 |
|
818 |
<pre caption="Installing the kernel"> |
819 |
# <i>mount /boot</i> |
820 |
# <i>cp arch/i386/boot/bzImage /boot/bzImage-2.6.9-gentoo-r2</i> |
821 |
# <i>cp System.map /boot/System.map-2.6.9-gentoo-r2</i> |
822 |
</pre> |
823 |
|
824 |
<p> |
825 |
Note that the above instructions are examples only, you should follow your |
826 |
usual procedure of updating kernels by following the instructions in the <uri |
827 |
link="/doc/en/handbook/index.xml">Gentoo Handbook</uri> (see the <uri |
828 |
link="/doc/en/handbook/handbook-x86.xml?part=1&chap=7">Configuring the |
829 |
Kernel</uri> chapter). |
830 |
</p> |
831 |
|
832 |
<p> |
833 |
When updating your bootloader config, do not remove the old entry pointing at |
834 |
your 2.4 kernel. This way, you will easily be able to switch between the two if |
835 |
something is not working. |
836 |
</p> |
837 |
|
838 |
<p> |
839 |
Now continue onto the <uri link="#modules">Module Configuration</uri> section. |
840 |
</p> |
841 |
|
842 |
</body> |
843 |
</section> |
844 |
</chapter> |
845 |
|
846 |
<chapter id="genkernel"> |
847 |
<title>Alternative: Using genkernel</title> |
848 |
<section> |
849 |
<body> |
850 |
|
851 |
<p> |
852 |
If you prefer to use genkernel instead of manually configuring your kernel, you |
853 |
will be happy to hear that using genkernel to produce 2.6 kernels is very |
854 |
similar to the process you performed when producing your previous 2.4 kernel. |
855 |
</p> |
856 |
|
857 |
<p> |
858 |
You should invoke genkernel as shown below: |
859 |
</p> |
860 |
|
861 |
<pre caption="Invoking genkernel with some common arguments"> |
862 |
# <i>genkernel --udev --menuconfig --bootloader=grub all</i> |
863 |
</pre> |
864 |
|
865 |
<p> |
866 |
In the above example, we also take advantage of genkernel features to open |
867 |
menuconfig to allow you to customise the kernel configuration (if you wish), |
868 |
and to update the grub bootloader configuration after compilation. |
869 |
</p> |
870 |
|
871 |
<p> |
872 |
You should choose genkernel arguments that suit you, but do not forget to |
873 |
include the <c>--udev</c> argument! Refer to the <uri |
874 |
link="/doc/en/genkernel.xml">Gentoo Linux Genkernel Guide</uri> and the <uri |
875 |
link="/doc/en/handbook/handbook-x86.xml?part=1&chap=7">Configuring the |
876 |
Kernel</uri> chapter of the <uri link="/doc/en/handbook/index.xml">Gentoo |
877 |
Handbook</uri> for additional information. |
878 |
</p> |
879 |
|
880 |
<p> |
881 |
If you choose to update your bootloader config yourself, then you must |
882 |
remember to include the <c>udev</c> kernel parameter. A sample <e>grub</e> |
883 |
config section is shown below, but remember to adjust the <e>real_root</e> |
884 |
parameter for your system. |
885 |
</p> |
886 |
|
887 |
<pre caption="Sample GRUB config for genkernel + udev"> |
888 |
title=Gentoo Linux (2.6 kernel) |
889 |
root (hd0,0) |
890 |
kernel /kernel-2.6.9-gentoo-r2 <i>udev</i> root=/dev/ram0 init=/linuxrc ramdisk=8192 real_root=/dev/hda3 |
891 |
initrd /initrd-2.6.9-gentoo-r2 |
892 |
</pre> |
893 |
|
894 |
</body> |
895 |
</section> |
896 |
</chapter> |
897 |
|
898 |
<chapter id="modules"> |
899 |
<title>Module Configuration</title> |
900 |
|
901 |
<section> |
902 |
<title>Installing external modules</title> |
903 |
<body> |
904 |
|
905 |
<p> |
906 |
Many users will additionally rely on kernel modules that are built outside of |
907 |
the kernel tree. Common examples are the binary ATI and Nvidia graphics |
908 |
drivers. You now need to install those modules, which will compile against the |
909 |
2.6 sources found at <path>/usr/src/linux</path>. This is the usual case of |
910 |
<c>emerge packagename</c> for all the external modules you are used to using |
911 |
with 2.4. |
912 |
</p> |
913 |
|
914 |
<p> |
915 |
Refer again to the <uri |
916 |
link="/doc/en/handbook/handbook-x86.xml?part=1&chap=7">Configuring the |
917 |
Kernel</uri> chapter of the <uri link="/doc/en/handbook/index.xml">Gentoo |
918 |
Handbook</uri> for more info. |
919 |
</p> |
920 |
|
921 |
</body> |
922 |
</section> |
923 |
<section> |
924 |
<title>Autoloading modules</title> |
925 |
<body> |
926 |
|
927 |
<p> |
928 |
You may have decided to compile some kernel components as modules (as opposed |
929 |
to compiled directly into the kernel) and would like to have them autoloaded on |
930 |
bootup like you did with 2.4. Also, if you installed any external modules from |
931 |
the portage tree (as described above) you will probably want to autoload them |
932 |
too. |
933 |
</p> |
934 |
|
935 |
<p> |
936 |
You can achieve this similarly as to how you did with 2.4. Simply open up the |
937 |
file <path>/etc/modules.autoload.d/kernel-2.6</path> in a text editor and list |
938 |
the names of the modules you would like autoloaded. |
939 |
</p> |
940 |
|
941 |
<pre caption="Opening the module autoload list in nano"> |
942 |
# <i>nano -w /etc/modules.autoload.d/kernel-2.6</i> |
943 |
</pre> |
944 |
|
945 |
<pre caption="Sample autoload list to load the 3c59x and nvidia modules"> |
946 |
# /etc/modules.autoload.d/kernel-2.6: kernel modules to load when system boots. |
947 |
# |
948 |
# Note that this file is for 2.6 kernels. |
949 |
# |
950 |
# Add the names of modules that you'd like to load when the system |
951 |
# starts into this file, one per line. Comments begin with # and |
952 |
# are ignored. Read man modules.autoload for additional details. |
953 |
|
954 |
3c59x |
955 |
nvidia |
956 |
</pre> |
957 |
|
958 |
</body> |
959 |
</section> |
960 |
</chapter> |
961 |
|
962 |
<chapter> |
963 |
<title>LVM to LVM2 migration</title> |
964 |
<section> |
965 |
<title>Upgrading to LVM2 tools</title> |
966 |
<body> |
967 |
|
968 |
<note> |
969 |
If you do not use LVM to manage your disk storage, you can safely skip |
970 |
this chapter and skip onto the next. |
971 |
</note> |
972 |
|
973 |
<p> |
974 |
Fortunately, upgrading from the LVM1 user tools to the LVM2 versions is very |
975 |
simple: |
976 |
</p> |
977 |
|
978 |
<pre caption="Upgrading user-tools from LVM1 to LVM2"> |
979 |
# <i>emerge unmerge lvm-user</i> |
980 |
# <i>emerge lvm2</i> |
981 |
</pre> |
982 |
|
983 |
<note> |
984 |
The LVM2 tools are fully backwards-compatible with LVM1. Your disk data will |
985 |
not be touched. You are not breaking any backwards-compatibility by doing |
986 |
this, you will continue to be able to boot 2.4 as usual. |
987 |
</note> |
988 |
|
989 |
</body> |
990 |
</section> |
991 |
</chapter> |
992 |
|
993 |
<chapter> |
994 |
<title>Booting into Linux 2.6</title> |
995 |
<section> |
996 |
<body> |
997 |
|
998 |
<p> |
999 |
It's now time to boot into Linux 2.6. Close all applications and reboot: |
1000 |
</p> |
1001 |
|
1002 |
<pre caption="Rebooting"> |
1003 |
# <i>umount /boot</i> |
1004 |
# <i>reboot</i> |
1005 |
</pre> |
1006 |
|
1007 |
<p> |
1008 |
When you reboot, if you followed this document correctly so far, you will have |
1009 |
the option of either loading Linux 2.4 or Linux 2.6 from your bootloader. |
1010 |
Choose Linux 2.6. |
1011 |
</p> |
1012 |
|
1013 |
<p> |
1014 |
Once the system has booted, check that things are working. If you made a |
1015 |
mistake in the kernel configuration, don't worry, you can skip back to the |
1016 |
<uri link="#conf">Configuring, building, and installing the kernel</uri> |
1017 |
section, make your change, recompile and install new kernel image, reboot, and |
1018 |
try again! |
1019 |
</p> |
1020 |
|
1021 |
</body> |
1022 |
</section> |
1023 |
<section> |
1024 |
<title>Configuring and unmuting ALSA</title> |
1025 |
<body> |
1026 |
|
1027 |
<p> |
1028 |
We will now complete the ALSA configuration and unmute the audio channels. The |
1029 |
ALSA packages provide a useful utility to make this process relatively simple: |
1030 |
</p> |
1031 |
|
1032 |
<pre caption="Invoking the automatic ALSA configuration utility"> |
1033 |
# <i>alsaconf</i> |
1034 |
</pre> |
1035 |
|
1036 |
<p> |
1037 |
The process is straightforward: allow the <e>/etc/modules.d/alsa</e> file to |
1038 |
be automatically updated, and then allow ALSA to be reloaded. alsaconf will |
1039 |
then terminate, however you will need to run it multiple times if you have |
1040 |
multiple sound devices installed in your system. |
1041 |
</p> |
1042 |
|
1043 |
<p> |
1044 |
You should now add <c>alsasound</c> to your boot runlevel, so that volumes |
1045 |
will be saved on shutdown and restored on bootup: |
1046 |
</p> |
1047 |
|
1048 |
<pre caption="Adding alsasound to the boot runlevel"> |
1049 |
# <i>rc-update add alsasound boot</i> |
1050 |
</pre> |
1051 |
|
1052 |
<note> |
1053 |
The <c>alsaconf</c> utility chooses initial volume levels for your sound |
1054 |
devices. If these are inappropriate, you can modify them at any time with the |
1055 |
<c>alsamixer</c> utility. |
1056 |
</note> |
1057 |
|
1058 |
</body> |
1059 |
</section> |
1060 |
<section> |
1061 |
<title>Any immediate problems?</title> |
1062 |
<body> |
1063 |
|
1064 |
<p> |
1065 |
At this stage you should refer back to the <uri link="#pitfalls">Known |
1066 |
pitfalls with Linux 2.6 migration</uri> section which may be helpful with any |
1067 |
issues you encounter immediately. |
1068 |
</p> |
1069 |
|
1070 |
</body> |
1071 |
</section> |
1072 |
</chapter> |
1073 |
|
1074 |
<chapter> |
1075 |
<title>Header files and NPTL</title> |
1076 |
<section> |
1077 |
<body> |
1078 |
|
1079 |
<p> |
1080 |
By now you are running Linux 2.6 and hopefully have all issues ironed out. You |
1081 |
should now update your Linux kernel header files and re-merge glibc so that |
1082 |
userspace applications can take advantage of new Linux 2.6 features. |
1083 |
</p> |
1084 |
|
1085 |
<pre caption="Updating to linux26-headers"> |
1086 |
# <i>emerge unmerge linux-headers</i> |
1087 |
# <i>emerge linux26-headers</i> |
1088 |
</pre> |
1089 |
|
1090 |
<p> |
1091 |
After updating your headers package, you should generally re-merge glibc. |
1092 |
There is a new feature here that you may be interested in - NPTL. NPTL is a new |
1093 |
threading model present in Linux 2.6, which features much quicker thread create |
1094 |
and destroy times. This won't make much of a difference to most systems, but |
1095 |
you may wish to enable it during this migration process! To enable NPTL, edit |
1096 |
<path>/etc/make.conf</path>, adding <e>nptl</e> to your USE variable. |
1097 |
</p> |
1098 |
|
1099 |
<warn> |
1100 |
With the current stable glibc ebuilds, you will be unable to boot a 2.4 kernel |
1101 |
after compiling glibc with USE="nptl". Be warned, be careful! |
1102 |
</warn> |
1103 |
|
1104 |
<p> |
1105 |
Now re-merge glibc (you should do this even if you did not choose to enable |
1106 |
NPTL). |
1107 |
</p> |
1108 |
|
1109 |
<pre caption="Reinstalling glibc against the new kernel headers"> |
1110 |
# <i>emerge -a glibc</i> |
1111 |
</pre> |
1112 |
|
1113 |
<p> |
1114 |
If you enabled NPTL, existing binaries will not use it until they are |
1115 |
recompiled. However, any binaries compiled from this point onwards <e>will</e> |
1116 |
use NPTL. You may wish to recompile all binaries now, e.g.: |
1117 |
</p> |
1118 |
|
1119 |
<pre caption="Recompiling all packages on the system"> |
1120 |
# <i>emerge -e world</i> |
1121 |
</pre> |
1122 |
|
1123 |
<p> |
1124 |
Alternatively, you can just let your system "naturally" convert itself to NPTL |
1125 |
as you update to newer versions of packages when they are released. |
1126 |
</p> |
1127 |
|
1128 |
</body> |
1129 |
</section> |
1130 |
</chapter> |
1131 |
|
1132 |
<chapter> |
1133 |
<title>Closing remarks</title> |
1134 |
<section> |
1135 |
<title>Problems?</title> |
1136 |
<body> |
1137 |
|
1138 |
<p> |
1139 |
With the incredible amount of work that went into Linux 2.6, it is sometimes |
1140 |
inevitable that things which used to work fine, no longer function as expected. |
1141 |
</p> |
1142 |
|
1143 |
<p> |
1144 |
If you have any problems with your 2.6 kernel, and you can confirm that this |
1145 |
problem does not exist with Linux 2.4, then please open a bug with us on our |
1146 |
<uri link="http://bugs.gentoo.org">Bugzilla</uri>. We will investigate the |
1147 |
issue, and if we find that it is a problem in the mainline kernel, we may then |
1148 |
ask you to file a report at the central kernel bugzilla. |
1149 |
</p> |
1150 |
|
1151 |
</body> |
1152 |
</section> |
1153 |
<section> |
1154 |
<title>Conclusion</title> |
1155 |
<body> |
1156 |
|
1157 |
<p> |
1158 |
Hopefully you have just completed a smooth migration and you are enjoying the |
1159 |
benefits which Linux 2.6 brings over 2.4. As I mentioned at the start, we are |
1160 |
looking for feedback on this document - even if your migration went perfectly |
1161 |
smoothly. Please <mail link="dsd@gentoo.org">mail me</mail> your feedback so |
1162 |
that we can get this document in perfect shape for when 2005.0 comes around. |
1163 |
Thanks! |
1164 |
</p> |
1165 |
|
1166 |
</body> |
1167 |
</section> |
1168 |
<section> |
1169 |
<title>Removing Linux 2.4 from your system</title> |
1170 |
<body> |
1171 |
|
1172 |
<p> |
1173 |
After you have been running 2.6 for a while, you may decide that you no longer |
1174 |
have any requirement to be able to use Linux 2.4. The steps you can take to |
1175 |
clean up your system are detailed below. <e>Only follow the procedure in this |
1176 |
section if you are sure that you don't want/need to use 2.4 again!</e> |
1177 |
</p> |
1178 |
|
1179 |
<p> |
1180 |
The 2.4 kernel source code can be removed, using the emerge utility as usual. |
1181 |
For example, assuming you have 2.4 versions of vanilla-sources and |
1182 |
gentoo-sources installed, you could use the following command to remove them |
1183 |
while keeping the 2.6 versions intact: |
1184 |
</p> |
1185 |
|
1186 |
<pre caption="Example: Removing Linux 2.4 sources"> |
1187 |
# <i>emerge unmerge =vanilla-sources-2.4.* =gentoo-sources-2.4.*</i> |
1188 |
</pre> |
1189 |
|
1190 |
<p> |
1191 |
Portage will not completely clean out your 2.4 kernel source installations, |
1192 |
because some temporary files are created during compilation. It is safe to |
1193 |
remove these remnants with the following command: |
1194 |
</p> |
1195 |
|
1196 |
<pre caption="Removing remaining temporary files"> |
1197 |
# <i>rm -rf /usr/src/linux-2.4.*</i> |
1198 |
</pre> |
1199 |
|
1200 |
<p> |
1201 |
You can additionally remove modules and information files relating to your |
1202 |
old 2.4 kernel installations, as these are no longer needed. |
1203 |
</p> |
1204 |
|
1205 |
<pre caption="Removing previously-installed 2.4 modules"> |
1206 |
# <i>rm -rf /lib/modules/2.4.*</i> |
1207 |
</pre> |
1208 |
|
1209 |
<p> |
1210 |
The 2.4 kernel binaries you used to boot from can also be safely removed. |
1211 |
You should mount your <c>/boot</c> partition, and remove those images. You |
1212 |
should also update your bootloader configuration so that it no longer |
1213 |
references these deleted kernel images. |
1214 |
</p> |
1215 |
|
1216 |
<p> |
1217 |
Some Linux 2.4 users will have previously installed the <c>alsa-driver</c> |
1218 |
package to benefit from the new audio capabilities included in Linux 2.6. If |
1219 |
you were one of these users, and you followed the advice given earlier in this |
1220 |
document about building ALSA with the 2.6 kernel sources (as opposed to using |
1221 |
the <c>alsa-driver</c> package), then you can safely remove this to prevent |
1222 |
future conflicts. |
1223 |
</p> |
1224 |
|
1225 |
<p> |
1226 |
Additionally, <c>lm-sensors</c> users will have previously used the <c>i2c</c> |
1227 |
package to provide the hardware drivers. As already mentioned, I2C drivers are |
1228 |
now included in the kernel, so this package can also be removed in order to |
1229 |
prevent future conflicts. |
1230 |
</p> |
1231 |
|
1232 |
<p> |
1233 |
The devfs management daemon, <c>devfsd</c>, can also safely be removed, now |
1234 |
that we are using <c>udev</c> for device management. |
1235 |
</p> |
1236 |
|
1237 |
<pre caption="Removing alsa-driver, i2c, and devfsd"> |
1238 |
# <i>emerge unmerge alsa-driver i2c devfsd</i> |
1239 |
</pre> |
1240 |
|
1241 |
<p> |
1242 |
If you are LVM2 user, you may wish to convert your data into the LVM2 data |
1243 |
format in order to benefit from the advantages which LVM2 provides. |
1244 |
However, this operation will prevent you from ever accessing your LVM data |
1245 |
from a 2.4 kernel. If you want to continue with the conversion (this is totally |
1246 |
optional!), then you should examine the <c>vgconvert</c> man page for |
1247 |
instructions on how to carry this out. An example is shown below, where |
1248 |
<c>main</c> is the volume group name. |
1249 |
</p> |
1250 |
|
1251 |
<pre caption="Converting a LVM1 volume to LVM2 format"> |
1252 |
# <i>vgconvert -M2 main</i> |
1253 |
</pre> |
1254 |
|
1255 |
</body> |
1256 |
</section> |
1257 |
</chapter> |
1258 |
</guide> |