Linux-Kernel selbst kompilieren

Kurzfassung des Kernel-HowTo von Thomas Hertweck.
Erster Schritt ist nach dem installieren der Quellen (die original Quellen der Distribution, geht aber auch mit Vanilliakernel) ist das wechseln in das Quellverzeichnis cd /usr/src/linux. Achtung linux ist im Normalfall nur ein Link auf das aktuelle Quellenverzeichnis, hat man zusätzliche Quellen installiert muss man diesen Link auf das richtige Verzeichnis umbiegen. Möchte man so wie ich nur eine weitere Option im Kernel freischalten so kann man mit make cloneconfig eine Kopie der Konfiguration des aktuell laufenden Kernels erzeugen. Eine der weiteren Möglichkeiten währe das einlesen einer alten Konfiguration von ./config.old mit make oldconfig
Nachdem man jetzt das Grundgerüst der Konfiguration besitzt kann man mit make menueconfig, make xconfig oder make gconfig die gewünschten Änderungen vornehmen.

Um den eigenen Kernel besser von denen der Distribution unterscheiden zu können ist es sinnvoll dem Kernel eine eigne Namenserweiterung zu geben z.B. -RD. Für die meisten Kernel geschieht dies im makefile mit der Option EXTRAVERSION, für SuSE-Kernel muss man jedoch im .config-File die Option CONFIG_LOCALVERSION ändern.

Ist alles eingestellet kann man den Kernel mit einem einfachen make bauen. Ist man root wird alles erledigt, inklusive des kopieren des Kernels nach /boot und der Eintrag für Grub. Ansonsten kann man den Kernel auch einzel bauen: ein make bzImage erstellt das Kernelimage unter /arch/i386 (bei IBM-PCs), make modules erstellt die dazugehörigen Module und mit make modules_install werden sie an die richtige Stelle kopiert (hierzu muss man root sein). Zum booten des Kernels muss das Kernelimage und die System.map umbennant und nach /boot kopiert werden. Mit mkinitrd -k vmlinuz-2.6.18-th1 -i initrd-2.6.18-th1 muss noch die passende initrd erstellt werden.

0 Kommentare zu “Linux-Kernel selbst kompilieren”


  • Keine Kommentare

Einen Kommentar hinterlassen




Stoppt die Vorratsdatenspeicherung! Jetzt klicken & handeln!Willst du auch bei der Aktion teilnehmen? Hier findest du alle relevanten Infos und Materialien: