/[gentoo]/xml/htdocs/doc/en/genkernel.xml
Gentoo

Diff of /xml/htdocs/doc/en/genkernel.xml

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

Revision 1.17 Revision 1.18
1<?xml version='1.0' encoding="UTF-8"?> 1<?xml version='1.0' encoding="UTF-8"?>
2<!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/en/genkernel.xml,v 1.17 2005/07/24 16:51:15 plasmaroo Exp $ --> 2<!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/en/genkernel.xml,v 1.18 2005/07/25 20:28:53 plasmaroo Exp $ -->
3<!DOCTYPE guide SYSTEM "/dtd/guide.dtd"> 3<!DOCTYPE guide SYSTEM "/dtd/guide.dtd">
4 4
5<guide link="/doc/en/genkernel.xml"> 5<guide link="/doc/en/genkernel.xml">
6<title>Gentoo Linux Genkernel Guide</title> 6<title>Gentoo Linux Genkernel Guide</title>
7 7
24genkernel. 24genkernel.
25</abstract> 25</abstract>
26 26
27<license/> 27<license/>
28 28
29<version>1.2</version> 29<version>1.3</version>
30<date>2005-07-24</date> 30<date>July 24, 2005</date>
31 31
32<chapter> 32<chapter>
33<title>Introduction</title> 33<title>Introduction</title>
34<section> 34<section>
35<title>Rationale</title> 35<title>Rationale</title>
242 flag. 242 flag.
243 </li> 243 </li>
244</ul> 244</ul>
245 245
246<ul> 246<ul>
247 <li> 247 <li>
248 <b>--callback="<c>echo hello</c>"</b>: Calls the specified arguments 248 <b>--callback="<c>echo hello</c>"</b>: Calls the specified arguments
249 (<c>echo hello</c>, in this case) after the kernel and the relevant modules 249 (<c>echo hello</c>, in this case) after the kernel and the relevant
250 have been built, but before building the initrd image. This may be useful 250 modules have been built, but before building the initrd image. This may
251 if you want to install external modules in the initrd image by emerging the 251 be useful if you want to install external modules in the initrd image by
252 relevant item using the callback feature, and then redefining a genkernel 252 emerging the relevant item(s) with the callback feature, and then
253 module group. 253 redefining a genkernel module group.
254 </li> 254 </li>
255</ul>
256
257<ul> 255</ul>
258 <li> 256
259 <b>--udev</b>: Activates support for the userspace device file system 257<ul>
260 (udev) in the initrd image.
261 </li>
262 <li> 258 <li>
263 <b>--<c>no-</c>install</b>: Activates <e>[or deactivates]</e> the 259 <b>--<c>no-</c>install</b>: Activates <e>[or deactivates]</e> the
264 <c>make install</c> command, which installs your new kernel image, 260 <c>make install</c> command, which installs your new kernel image,
265 configuration file, initrd image and system map onto your mounted boot 261 configuration file, initrd image and system map onto your mounted boot
266 partition. Any compiled modules will be installed as well. 262 partition. Any compiled modules will be installed as well.
388of these flags are primarily for aesthetics, while others may be essential for 384of these flags are primarily for aesthetics, while others may be essential for
389enabling certain features on the system. 385enabling certain features on the system.
390</p> 386</p>
391 387
392<ul> 388<ul>
393 <li> 389 <li>
394 <b>--<c>no-</c>bootsplash</b>: Activates <e>[or deactivates]</e> 390 <b>--<c>no-</c>bootsplash</b>: Activates <e>[or deactivates]</e> support
395 bootsplash support in the genkernel-built initrd image. The bootsplash 391 for <uri link="http://www.bootsplash.org/">bootsplash</uri> in the
396 feature is supported on a limited number of architectures, and a kernel 392 genkernel-built initrd image. The bootsplash feature is supported on a
397 that supports bootsplash is also required. Bootsplash is only supported 393 limited number of architectures, and a kernel that supports bootsplash
398 on 2.4 series kernels. 394 is also required.
399 </li> 395 </li>
400 <li> 396 <li>
401 <b>--<c>no-</c>gensplash</b>: Activates <e>[or deactivates]</e> 397 <b>--<c>no-</c>gensplash</b>: Activates <e>[or deactivates]</e> support
398 for <uri link="http://dev.gentoo.org/~spock/projects/gensplash/">gensplash</uri>
402 gensplash support in the genkernel-built initrd image. The gensplash 399 support in the genkernel-built initrd image. The gensplash utility is
403 utility is intended to be a replacement for bootsplash, and is designed for 400 intended to be a replacement for bootsplash, and is designed for use with
404 use with 2.6.x series kernels. 401 2.6.x series kernels. To override the default theme used by gensplash,
402 use <b>--gensplash=<c>PreferredTheme</c></b> (where <c>PreferredTheme</c>
403 is the title of one of the directories inside the
404 <path>/etc/splash/</path> directory.
405 </li> 405 </li>
406 <li> 406 <li>
407 <b>--do-keymap-auto</b>: Specifies which keymap to use during the boot 407 <b>--gensplash-res=<c>PreferredResolution</c></b>: This flag allows you
408 sequence. 408 to select which splash screen resolutions will be supported in the initrd
409 during the start-up of the system. This is useful for two reasons: First,
410 you are able to select only the splash screen resolution(s) relevant to
411 your system. Second, you avoid the unnecessary increase in the disk space
412 required by initrd (since the initrd does not have to support resolutions
413 that are irrelevant for your system configuration.) However, you may want
414 to omit this flag if the kernel is being compiled for an Installation CD;
415 this allows gensplash support for all possible resolutions.
409 </li> 416 </li>
410 <li> 417 <li>
418 <b>--do-keymap-auto</b>: Force keymap selection during the boot
419 sequence.
420 </li>
421 <li>
411 <b>--lvm2</b>: Includes support for storage using via Logical Volume 422 <b>--lvm2</b>: Includes support for storage using via <uri
423 link="http://sources.redhat.com/lvm2/">Logical Volume Management</uri>
412 Management (LVM2) from static binaries, if available to the system. 424 (LVM2) from <e>static</e> binaries, if available to the system. Relevant
413 Relevant (static) LVM2 binaries are compiled if they are unavailable. 425 (static) LVM2 binaries are compiled if they are unavailable. Be sure to
414 Be sure to install the lvm2 package on your system with <c>emerge 426 install the lvm2 package on your system with <c>emerge lvm2</c> before
415 lvm2</c> before enabling this flag, and review the <uri 427 enabling this flag, and review the <uri
416 link="http://www.gentoo.org/doc/en/lvm2.xml">Gentoo LVM2 428 link="http://www.gentoo.org/doc/en/lvm2.xml">Gentoo LVM2
417 Installation</uri> guide. 429 Installation</uri> guide.
418 </li> 430 </li>
419 <li> 431 <li>
420 <b>--evms2</b>: Includes support for storage using the Enterprise Volume 432 <b>--evms2</b>: Includes support for storage using the <uri
433 link="http://evms.sourceforge.net/">Enterprise Volume Management
421 Management System (EVMS/EVMS2), if available. Be sure to install the evms 434 System</uri> (EVMS2), if available. Be sure to install the evms package
422 package on your system with <c>emerge evms</c> before using this flag. 435 on your system with <c>USE=static emerge evms2</c> before using this
423 </li> 436 (genkernel) flag. <e>(Omitting the </e><c>USE=static</c> <e>flag during
437 package installation will fail to include the necessary static binaries.)
438 </e>
424 <li> 439 </li>
440 <li>
425 <b>--dmraid</b>: Includes support for the DMRAID, the utility which 441 <b>--dmraid</b>: Includes support for <uri
442 link="http://people.redhat.com/~heinzm/sw/dmraid/readme">DMRAID</uri>;
426 creates RAID mappings using the kernel device-mapper subsystem. DMRAID 443 the utility which creates RAID mappings using the kernel device-mapper
427 discovers, activates, deactivates and displays properties of software 444 subsystem. DMRAID discovers, activates, deactivates and displays
428 RAID sets (ATARAID, for example) and contained DOS partitions. 445 properties of software RAID sets (ATARAID, for example) and contained
446 DOS partitions.
429 </li> 447 </li>
430 <li> 448 <li>
431 <b>--linuxrc=/path/to/your/linuxrc</b>: Specifies a user-created 449 <b>--linuxrc=/path/to/your/linuxrc</b>: Specifies a user-created
432 <e>linuxrc</e> &#8212; a script that is initialized during the start-up 450 <e>linuxrc</e> &#8212; a script that is initialized during the start-up
433 stage of the kernel, prior to the actual boot process. (A default linuxrc 451 stage of the kernel, prior to the actual boot process. (A default linuxrc
441 </li> 459 </li>
442 <li> 460 <li>
443 <b>--tempdir=/path/to/new/tempdir/</b>: Specifies the location of the 461 <b>--tempdir=/path/to/new/tempdir/</b>: Specifies the location of the
444 temporary directory used by genkernel while compiling the kernel. 462 temporary directory used by genkernel while compiling the kernel.
445 </li> 463 </li>
464 <li>
465 <b>--unionfs</b>: Includes support for the <uri
466 link="http://www.fsl.cs.sunysb.edu/project-unionfs.html">Unification File
467 System</uri> in the initrd image.
468 </li>
446</ul> 469</ul>
447 470
448</body> 471</body>
449</section> 472</section>
450 473
463 directory needs to be mounted on a separate partition. It will check 486 directory needs to be mounted on a separate partition. It will check
464 <path>/etc/fstab</path> script for instructions on how to mount the boot 487 <path>/etc/fstab</path> script for instructions on how to mount the boot
465 partition on a file system (if needed). 488 partition on a file system (if needed).
466 </li> 489 </li>
467 <li> 490 <li>
468 <b>--arch-override=<c>someArch</c></b>: Overrides the architecture 491 <b>--kernname=<c>NickName</c></b>: Allows you to modify the name of the
469 genkernel assumes for the kernel compilation process. This flag is useful 492 kernel and initrd images in the <path>/boot/</path> directory, so that
470 if the auto-detection mechanism fails (please file a bug if it does!) or 493 the images produced are kernel-<c>NickName</c>-version and
471 if you wish to cross-compile a kernel. The list of supported 494 initramfs-<c>NickName</c>-version.
472 architectures is available in the <path>/usr/share/genkernel/</path>
473 directory.
474 </li>
475</ul>
476
477<ul>
478 <li>
479 <b>--busybox-config=<path>/path/to/busybox-config</path></b>: Overrides
480 the default Busybox configuration with the specified file.
481 </li>
482 <li>
483 <b>--busybox-bin=<path>/path/to/busybox-binary.tar.bz2</path></b>: Using
484 this option means that a (static) Busybox binary will not be compiled;
485 the specified tarball would be used instead.
486 </li>
487</ul>
488
489<ul>
490 <li>
491 <b>--maxkernpackage=<path>/output/to/yourkernel.tar.bz2</path></b>:
492 Creates a package that includes the kernel, the initrd image, the
493 kernel's modules (located in <path>/lib/modules/</path>) and
494 configuration file.
495 </li>
496 <li>
497 <b>--minkernpackage=<path>/output/to/yourkernel.tar.bz2</path></b>:
498 Creates a package that includes the kernel, and initrd image. The
499 difference between this flag and the <b>--maxkernpackage</b> flag is that
500 the kernel's modules and configuration file are excluded from the package
501 created by this flag.
502 </li> 495 </li>
503</ul> 496</ul>
504 497
505</body> 498</body>
506</section> 499</section>
515supported: 508supported:
516</p> 509</p>
517 510
518<ul> 511<ul>
519 <li><c>initrd</c>: Only builds the initrd image</li> 512 <li><c>initrd</c>: Only builds the initrd image</li>
513 <li><c>bzImage</c>: Only builds the kernel image</li>
520 <li><c>kernel</c>: Only builds the kernel image and modules</li> 514 <li><c>kernel</c>: Only builds the kernel image and modules</li>
521 <li><c>all</c>: Builds all stages &#8212; the initrd, kernel image and 515 <li><c>all</c>: Builds all stages &#8212; the initrd, kernel image and
522 modules.</li> 516 modules.</li>
523</ul> 517</ul>
524 518
708Support for netbooting with genkernel is experimental and may contain bugs. 702Support for netbooting with genkernel is experimental and may contain bugs.
709</warn> 703</warn>
710 704
711<p> 705<p>
712First, the kernel image must include the drivers for your Network Interface 706First, the kernel image must include the drivers for your Network Interface
713Cards (NIC). Normally, these drivers will be compiled as modules. However, it 707Cards (NIC). Normally, drivers for such devices will be compiled as modules.
714is essential (for netbooting) that you such drivers compiled directly into the 708However, it is essential (for netbooting) that you such drivers compiled
715kernel image and <b>not</b> as modules. 709directly into the kernel image and <b>not</b> as modules.
716</p> 710</p>
717 711
718<pre caption="Configuring a 2.6.x series kernel to support your NIC driver"> 712<pre caption="Configuring a 2.6.x series kernel to support your NIC driver">
719Device Drivers ---> 713Device Drivers --->
720 Networking Support ---> 714 Networking Support --->
894<title>To Automate or not to Automate?</title> 888<title>To Automate or not to Automate?</title>
895<body> 889<body>
896 890
897<p> 891<p>
898The purpose of genkernel is to provide an (easier) alternative to the 892The purpose of genkernel is to provide an (easier) alternative to the
899time-tested approach to kernel compilation, where you have to issue a variety 893time-tested approach to kernel compilation. As always, you are free to decide
900of commands. As always, you are free to decide on whether or not you want to 894on whether or not you want to automate the kernel compilation process.
901automate the kernel compilation process.
902</p> 895</p>
903 896
904</body> 897</body>
905</section> 898</section>
906 899

Legend:
Removed from v.1.17  
changed lines
  Added in v.1.18

  ViewVC Help
Powered by ViewVC 1.1.20