Handbook:Parts/Installation/Kernel/de

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, und insbesondere bei WLAN Interfaces der Fall. Auch moderne Video-Chips von Herstellern wie AMD, NVidia und Intel benötigen häufig externe Firmware-Dateien, selbst oder gerade wenn sie mit Open-Source Treibern angesteuert werden. Die meiste Firmware befindet sich im Paket :

In addition to discrete graphics hardware and network interfaces, CPUs also can require firmware updates. Typically this kind of firmware is referred to as microcode. Newer revisions of microcode are sometimes necessary to patch instability, security concerns, or other bugs in CPU hardware.

Microcode updates for AMD CPUs are typically distributed with the aforementioned linux-firmware package. Microcode for Intel CPUs can be found in the package, which will need to be installed separately. See the Microcode article for more information on how to apply microcode updates.

Kernel configuration and compilation
Jetzt ist es Zeit, die Kernel-Quellen zu konfigurieren und zu kompilieren. Dafür gibt es zwei Ansätze:


 * 1) Der Kernel wird manuell konfiguriert und gebaut.
 * 2) Sie verwenden das Werkzeug, um den Linux Kernel automatisch zu bauen und zu installieren.

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

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

Installation der Quellen
Bei -basierten Systemen empfiehlt Gentoo das Paket.

Wählen Sie eine passende Kernel-Quelle und installieren Sie diese mit :

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

It is conventional for a symlink to be maintained, such that it refers to whichever sources correspond with the currently running kernel. However, this symbolic link will not be created by default. An easy way to create the symbolic link is to utilize eselect's kernel module.

For further information regarding the purpose of the symlink, and how to manage it, please refer to Kernel/Upgrade.

First, list all installed kernels:

In order to create a symbolic link called, use:

Einleitung
Einen Kernel manuell zu konfigurieren wird oft als die schwierigste Aufgabe gesehen, die ein Linux Benutzer jemals durchzuführen hat. Nichts ist weiter von der Wahrheit entfernt. Nach der Konfiguration einiger Kernel werden Sie sich nicht mehr daran erinnern, dass es jemals schwer war. ;&#41;

Eine Sache ist jedoch wahr: um einen Kernel manuell konfigurieren zu können, ist es wichtig, das System zu kennen. Die meisten Informationen erhalten Sie durch das Programm, das im Paket enthalten ist.

Eine weitere Quelle von Systeminformationen ist. Diese Anweisung zeigt Ihnen, welche Kernel-Module die Installations-CD verwendet. Dies liefert gute Hinweise darauf, was im Kernel aktiviert werden sollte.

Gehen Sie in das Kernel Quellverzeichnis und führen Sie aus. Dies wird eine menübasierte Konfigurationsmaske starten.

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
Wenn Sie das Paket verwenden, empfehlen wir dringend, die Gentoo-spezifischen Konfigurations-Optionen zu aktivieren. Diese stellen sicher, dass eine Mindest-Menge von Kernel-Funktionen vorhanden ist, die für das einwandfreie Funktionieren erforderlich ist:

Ihre Wahl für die letzten beiden Zeilen sollte natürlich von dem gewählten Init-System abhängen (OpenRC oder Systemd).

Naturally the choice in the last two lines depends on the selected init system (OpenRC vs. systemd). It does not hurt to have support for both init systems enabled.

Wenn Sie das Paket verwenden, müssen Sie die erforderlichen Optionen selbst heraussuchen.

Stellen Sie sicher, dass jeder Treiber, der zum Booten des Systems notwendig ist (wie z.B. SCSI-Controller, usw.), 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 Prozessor-Typ. 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, damit kritische Gerätedateien bereits früh im Boot-Prozess verfügbar sind ( CONFIG_DEVTMPFS and CONFIG_DEVTMPFS_MOUNT ):

Überprüfen Sie, dass SCSI disk Unterstützung aktiviert wurde ( CONFIG_BLK_DEV_SD ):

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 Root-Partition einzuhängen. Wählen Sie ebenfalls Virtual memory und /proc file system. Wählen Sie eine oder mehrere Dateisysteme, die Sie auf Ihrem System verwenden wollen ( CONFIG_EXT2_FS, CONFIG_EXT3_FS , CONFIG_EXT4_FS , CONFIG_MSDOS_FS , CONFIG_VFAT_FS , CONFIG_PROC_FS , and CONFIG_TMPFS ):

Wenn PPPoE für die Internetverbindung, oder ein Einwahl-Modem verwendet wird, aktivieren Sie die folgenden Optionen ( CONFIG_PPP, CONFIG_PPP_ASYNC , and CONFIG_PPP_SYNC_TTY ):

Die beiden Komprimierungsoptionen schaden nicht, werden aber auch nicht unbedingt benötigt. Ebenso wenig wie die PPP over Ethernet Option, die vielleicht nur von ppp benötigt wird, wenn 'kernel mode PPPoE' konfiguriert wird.

Vergessen Sie nicht, die Unterstützung von Netzwerkkarten (Ethernet oder Wireless-LAN) zu aktivieren.

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

Wenn Sie USB-Eingabegeräte (wie Tastatur oder Maus) oder andere USB-Geräte verwenden, vergessen Sie nicht, diese ebenfalls zu aktivieren ( CONFIG_HID_GENERIC and CONFIG_USB_HID, CONFIG_USB_SUPPORT , CONFIG_USB_XHCI_HCD , CONFIG_USB_EHCI_HCD , CONFIG_USB_OHCI_HCD ):

Optional: initramfs bauen
In bestimmten Fällen ist es notwendig, ein initramfs (Ausgangsdateisystem im Arbeitsspeicher) zu bauen. Der häufigste Grund dafür ist, dass wichtige System-Verzeichnisse (wie oder ) auf separaten Partitionen liegen. Diese Partitionen können 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 den einzuhängenden Dateisystemen befinden. Ein initramfs zieht die notwendigen Dateien in ein Archiv, welches genutzt werden kann nachdem der Kernel gebootet hat, 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 das Tool ein initramfs erzeugen:

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
Wenn eine manuelle Konfiguration für Sie zu abschreckend aussieht, empfehlen wir die Nutzung von. Dies wird den Kernel automatisch konfigurieren und bauen.

konfiguriert den Kernel fast identisch zu der Art, wie ein Installations-CD Kernel konfiguriert wird. Wenn Sie  verwenden, um einen Kernel zu bauen, wird die gesamte Hardware erst zur Bootzeit erkannt, genau so wie die Installations-CD das macht. Weil keine manuelle Kernel-Konfiguration benötigt, ist es eine ideale Lösung für jene Benutzer, denen unwohl beim Kompilieren ihres eigenen Kernels ist.

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

Editieren Sie die Datei, so dass die Zeile, die als zweites Feld beinhaltet, im ersten Feld auf das richtige Device zeigt. Wenn Sie dem Partitionierungs-Beispiel aus diesem Handbuch folgen, ist dieses Device wahrscheinlich mit einem ext2 Dateisystem. Dann würde der Eintrag in der Datei in etwa wie folgt aussehen:

Kompilieren Sie jetzt die Kernel-Quellen, indem Sie ausführen. Seien Sie sich aber bewusst, dass der Vorgang einige Zeit in Anspruch nehmen wird, da einen Kernel kompiliert, der fast alle Hardware unterstützt!

Wenn genkernel fertig ist, wird ein Kernel, ein voller Satz Module und ein initial ram filesystem (initramfs) erstellt worden sein. 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). Danach wird das "richtige" System gestartet.

Konfigurieren der Module
Konfigurieren Sie die Module, die beim Booten automatisch geladen werden sollen, in Dateien. In jeder Zeile wird ein Modul angegeben. Zusätzliche Optionen für die Module sollten in Dateien konfiguriert werden.

Um alle verfügbaren Module anzuzeigen, können Sie den folgenden Befehl ausführen. Vergessen Sie nicht, "" mit der Version des Kernels zu ersetzen, den Sie gerade kompiliert haben:

Um beispielsweise automatisch das Modul zu laden (ein Treiber für eine bestimmte 3Com Netzwerkkarten-Familie), editieren Sie die Datei  und fügen Sie den Modulnamen ein. Der genaue Dateiname in ist für den Loader unwichtig.

Setzten Sie die Installation mit der Konfiguration des Systems fort.