Kompilieren des Kerns und der Module, Installation des gesamten „Pakets

Eine Kleinigkeit zu Beginn: Wenn Sie einen Kern mit exakt identischer Version neu durchbauen wollen, die schon in Ihrem System vorhanden ist, müssen die alten Module zuerst gelöscht werden. Wenn Sie also die Version 2.6.8 rekompilieren, dann löschen Sie zuerst das Verzeichnis /lib/modules/2.6.8.

Das Kompilieren des Kernes und der Module und das Installieren der Module geschieht durch folgende Zeilen:

make clean
make all
make modules_install install

Eine kleine Begriffserklärung: Die benutzten Argumente clean, all, etc., werden Targets („Ziele“) genannt. Mit dem Kern 2.6 wurde das Target all eingeführt. Es beinhaltet die Ausführung der von älteren Kernen her bekannten Targets (bei x86-Systemen) bzImage und modules. Diese neue Option erstellt die vorgegebenen Targets unter jeder vorhandenen Architektur während vor der Kernserie 2.6 jede Architektur ihre eigenen verschiedenen Argumente zum Durchbauen des Kernes hatte. Wenn Sie verschiedene Ziele für make angeben (wie oben beschrieben), dann werden Sie in der Reihenfolge ihrer Auflistung ausgeführt. Wenn dabei ein Ziel nicht erledigt werden kann, macht make nicht weiter [35].

Lassen Sie uns die unterschiedlichen Ziele betrachten und sehen, was diese bewirken:

[Warning]Warnung

Es ist wichtig, die Zielreihenfolge modules_install install einzuhalten, so dass die Module zuerst installiert werden. Anderenfalls wäre initrd nicht korrekt und der Bootvorgang würde fehlschlagen.

An diesem Punkt ist nun alles kompiliert und korrekt installiert, bereit zum Testen! Starten Sie Ihren Rechner neu und wählen Sie den neuen Kern im Startmenü aus. Beachten Sie, dass der alte Kern erreichbar bleibt, so dass Sie ihn bei Problemen mit dem neuen Kern wiederverwenden können. Sie können sich aber auch für eine manuelle Installation entscheiden und das Startmenü manuell verändern. Wir werden das im nächsten Abschnitt behandeln.



[35] Wenn die Kompilierung an dieser Stelle fehlschlägt, haben Sie einen Bug im Kern gefunden ... Ist dies der Fall, melden Sie es bitte!