Handbook:Parts/Installation/Kernel/de

Installation der Quellen
Der Kern um den herum alle Distributionen gebaut sind ist der Linux Kernel. Er ist die Schicht zwischen den Benutzerprogrammen und der Systemhardware. Gentoo bietet seinen Benutzern verschiedene mögliche Kernel-Quellen. Eine komplette Liste mit Beschreibung finden Sie auf der Kernel Übersichtsseite.

Bei -basierten Systemen empfiehlt Gentoo das Paket.

Choose an appropriate kernel source and install it using :

Dies installiert die Quellen des Linux Kernel im Verzeichnis, in welchem der symbolischer Link namens auf die installierten Kernel-Quellen zeigt:

Now it is time to configure and compile the kernel sources. There are two approaches for this:


 * 1) The kernel is manually configured and built.
 * 2) A tool called  is used to automatically build and install the Linux kernel.

Wir erklären hier die manuelle Konfiguration als Standardwahl, weil dies der beste Weg ist die Umgebung zu optimieren.

Einleitung
Manually configuring a kernel is often seen as the most difficult procedure a Linux user ever has to perform. Nothing is less true - after configuring a couple of kernels no-one even remembers that it was difficult ;)

However, one thing is true: it is vital to know the system when a kernel is configured manually. Most information can be gathered by emerging which contains the  command:

Another source of system information is to run to see what kernel modules the installation CD uses as it might provide a nice hint on what to enable.

Now go to the kernel source directory and execute. This will fire up menu-driven configuration screen.

Die Linux Kernel-Konfiguration hat viele, viele Abschnitte. Wir listen zunächst einige Optionen auf, die aktiviert werden müssen (ansonsten wird Gentoo nicht funktionieren, oder ohne zusätzliche Veränderungen nicht richtig funktionieren). Wir haben im Gentoo Wiki auch einen Gentoo Kernel-Konfigurationsleitfaden, der weiterhelfen könnte.

Aktivieren der benötigten Optionen
Stellen Sie sicher, dass jeder Treiber der zum Booten des Systems notwendig ist (wie z.B. SCSI-Controller, ...) direkt in den Kernel kompiliert ist (nicht als Modul). Andernfalls wird das System nicht in der Lage sein komplett zu booten.

Als Nächstes wählen Sie den genauen Prozessortyp. Es wird auch empfohlen die MCE-Funktion zu aktivieren (wenn verfügbar), so dass Benutzer bei Hardwareproblemen benachrichtigt werden können. Auf einigen Architekturen (wie z.B. X86_64) werden diese Fehler nicht über, sondern auf  ausgegeben. Dies erfordert das Paket.

Wählen Sie auch Maintain a devtmpfs file system to mount at /dev, so dass kritische Gerätedateien bereits früh im Boot-Prozess verfügbar sind.

Gehen Sie nun zu den Dateisystemen (File Systems) und aktivieren Sie die Dateisysteme die Sie verwenden. Kompilieren Sie das Dateisystem das als Root-Dateisystem verwendet wird nicht als Modul. Andernfalls wird das Gentoo-System nicht in der Lage sein die Partition einzuhängen. Wählen Sie ebenfalls Virtual memory und /proc file system.

Wenn PPPoE für die Internetverbindung, oder ein Einwahl-Modem verwendet wird, aktivieren Sie die folgenden Optionen:

Die beiden Komprimierungsoptionen schaden nicht, aber werden definitiv nicht benötigt. Ebenso wie die PPP over Ethernet Option, die vielleicht nur PPP verwendet, wenn Kernel-Mode PPPoE verwendet wird.

Vergessen Sie nicht die Unterstützung von Netzwerkkarten (Ethernet oder Wireless-LAN) im Kernel.

Die meisten Systeme haben auch mehrere Prozessorkerne zur Verfügung. Daher ist es wichtig Symmetric multi-processing support zu aktivieren:

Wenn Sie USB-Eingabegeräte (wie Tastatur oder Maus) verwenden, vergessen Sie nicht diese ebenfalls zu aktivieren:

Optional: initramfs bauen
In bestimmten Fällen ist es notwendig ein initramfs (Ausgangsdateisystem im Arbeitsspeicher) zu bauen. Der häufigste Grund dafür ist wenn wichtige Dateisystemorte (wie oder ) auf separaten Partitionen liegen. Mit einem initramfs können diese Partition, mit Hilfe der Werkzeuge die im initramfs Verfügbar sind, eingehängt werden.

Ohne initramfs besteht ein großes Risiko, dass das System nicht richtig bootet, da die Werkzeuge die für das Einhängen der Dateisysteme verantwortlich sind Informationen benötigen, die sich auf diesen Dateisystemen befinden. Ein initramfs zieht die notwendigen Dateien in ein Archiv, welches direkt nachdem der Kernel bootet genutzt wird, aber noch bevor die Kontrolle an das init Tool übergeben wird. Skripte auf dem initramfs stellen dann sicher, dass die Partitionen richtig eingehängt sind, bevor das System mit dem Booten fortfährt.

Zur Installation eines initramfs installieren Sie zunächst das Paket. Im Anschluss daran lassen Sie dem Tool ein initramfs erzeugen:

In order to enable specific support in the initramfs, such as lvm or raid, add in the appropriate options to. See for more information. In the next example we enables support for LVM and software raid (mdadm):

Das initramfs wird in gespeichert. Die resultierende Datei kann einfach durch Auflisten der mit initramfs beginnenden Dateien gefunden werden:

Fahren Sie nun beim Abschnitt Kernel-Module fort.

Alternative: genkernel verwenden
If a manual configuration looks too daunting, then using is recommended. It will configure and build the kernel automatically.

works by configuring a kernel nearly identically to the way the installation CD kernel is configured. This means that when is used to build the kernel, the system will generally detect all  hardware at boot-time, just like the installation CD does. Because doesn't require any manual kernel configuration, it is an ideal solution for those users who may not be comfortable compiling their own kernels.

Schauen wir uns nun an, wie man genkernel verwendet. Installieren Sie als erstes das Pakel :

Bearbeiten Sie dann die Datei, so dass die Zeile die als zweites Feld beinhaltet im ersten Feld auf das richtige Gerät zeigt. Wenn Sie dem Partitionierungs-Beispiel aus diesem Handbuch folgen, ist dieses Gerät wahrscheinlich mit dem ext2 Dateisystem. Dies würde den Eintrag in der Datei in etwa wie folgt aussehen lassen:

Now, compile the kernel sources by running. Be aware though, as compiles a kernel that supports almost all hardware, this compilation will take quite a while to finish!

Sobald genkernel beendet ist, wird ein Kernel, ein voller Satz Module und ein initial ram filesystem (initramfs) erstellt werden. Wir verwenden den Kernel und die initrd bei der Konfiguration des Boot-Loader später in dieser Anleitung. Schreiben Sie sich die Namen des Kernels und der initrd auf, da Sie diese Information benötigen, wenn die Boot-Loader Konfigurationsdatei bearbeitet wird. Die initrd wird sofort nach dem Booten gestartet um die automatische Hardware-Erkennung durchzuführen (wie bei der Installations-CD) bevor das "richtige" System startet.

Konfiguration der Module
Listen Sie die Module, die automatisch geladen werden sollen, in der Datei auf. Zusätzliche Optionen können Sie den Modulen ebenfalls hinzufügen, wenn nötig.

To view all available modules, run the following command. Don't forget to substitute " " with the version of the kernel just compiled:

Um beispielsweise automatisch das Modul zu laden (das der Treiber für eine bestimmte 3Com Netzwerkkartenfamilie ist), bearbeiten Sie die Datei  und geben den Modulnamen ein.

Setzten Sie die Installation mit der Konfiguration des Systems fort.

Optional: Firmware installieren
Einige Treiber benötigen die Installation von zusätzlicher Firmware auf dem System, bevor sie funktionieren. Dies ist häufig bei Netzwerkkarten, im Besonderen bei WLAN Netzwerkkarten der Fall. Die meiste Firmware befindet sich im Paket :