Linux‑Kernel 3.0 kompilieren

Juli 25, 2011·
Julio Batista Silva
Julio Batista Silva
· 2 Min Lesezeit
Hinweis
UNVOLLSTÄNDIGER ARTIKEL!

Die neue Kernel‑Version 3.0 wurde vor 3 Tagen (22.07.2011) veröffentlicht. Ich habe sie auf meinen Notebooks kompiliert und installiert und hier die Schritte notiert. Zuerst unter Ubuntu 11.04, dann unter Arch Linux; der Prozess ist ähnlich auf anderen Distributionen.

Hinweis: Unter Arch kann man den Kernel auch mit ABS + Pacman bauen. Hier beschreibe ich nur die klassische Methode.

ACHTUNG! Neue Versionen enthalten oft Bugs – ich habe sie nur zu Lernzwecken installiert. Besser ein paar Wochen warten, bis Pakete deiner Distribution verfügbar sind.

Dieses Tutorial ist auch hilfreich, wenn du ein Modul ändern oder einen Patch anwenden musst. Die Schritte sind einfach; bei Problemen kannst du meist zum alten Kernel zurückkehren. Trotzdem: mit Vorsicht und mit Backups wichtiger Daten arbeiten. Keine Haftung.

Vorgehen:

  1. Build‑Werkzeuge installieren

    Ubuntu:

    sudo apt-get install gcc
    

    Arch:

    sudo pacman -S gcc
    
  2. Kernel‑Paket laden (hier von http://www.kernel.org – damals einzige 3.0‑Quelle)

    wget http://www.kernel.org/pub/linux/kernel/v3.0/linux-3.0.tar.bz2
    
  3. Paket entpacken (hier ~/src)

    tar jxvf linux-3.0.tar.bz2 -C ~/src
    
  4. Optional die aktuelle .config kopieren und nur Nötiges ändern

    cp /usr/src/linux-headers-2.6.38-8-generic-pae/.config ~/src/linux-3.0
    

    In Ubuntus .config lassen sich VIELE Punkte deaktivieren. Entferne alle Treiber, die du nicht brauchst (Netzwerk, Wireless, Video, Geräte …). Das reduziert Kompilier‑ und Ladezeit deutlich.

  5. In den Ordner wechseln (cd ~/src/linux-3.0) und konfigurieren.

    Optionen:

    • make config → Textmodus
    • make menuconfig → ncurses
    • make xconfig → QT‑GUI
    • make gconfig → GTK‑GUI

    Ich nutze menuconfig; für Einsteiger ist xconfig mit Hilfetexten angenehm.

    Navigation/Keys:

    • Y → in Kernel einbetten
    • M → als Modul bauen
    • N → deaktivieren
    • ? → Hilfe
    • / → Suche
    • Leertaste → umschalten
    • ESC → zurück/Beenden

    Speichern.

  6. Kernel kompilieren – das dauert. Hier über eine Stunde.

    make -j2
    

    Für Dual‑Core make -j3, Quad‑Core make -j5 usw. (j = Kerne + 1).

  7. Kernel und Module installieren

    make modules
    sudo make modules_install
    sudo make install
    
  8. Prüfen, ob /boot/grub/grub.cfg aktualisiert wurde. Falls nicht, Eintrag hinzufügen. Bei mir wurde automatisch u. a. eingetragen:

    (menuentry 'Ubuntu, with Linux 3.0.0Julio' --class ubuntu --class gnu-linux --class gnu --class os {
            recordfail
            set gfxpayload=$linux_gfx_mode
            insmod part_msdos
            insmod ext2
            set root='(/dev/sda,msdos6)'
            search --no-floppy --fs-uuid --set=root 6d6b6bce-af80-450f-943f-23c0a2bed958
            linux	/vmlinuz-3.0.0Julio root=/dev/sda7 ro   quiet splash vt.handoff=7
        }
    
  9. Rechner neu starten und den neuen Kernel booten.

    sudo reboot
    

Bei kernel panic den alten Kernel booten und den Fehler beheben.


Julio Batista Silva
Autoren
Senior Cloud-Entwickler
comments powered by Disqus