Home / LinuxUser / 2004 / 07 / Kernel übersetzen und installieren.

Newsletter abonnieren

Lies uns auf...

Folge LinuxCommunity auf Twitter

Top-Beiträge

Mandriva gibt Distribution in die Hände der Community
(268 Punkte bei 24 Stimmen)
Neues vom Systemd
(161 Punkte bei 4 Stimmen)
Mandriva in Nöten
(161 Punkte bei 4 Stimmen)

Heftarchiv

LinuxUser Heftarchiv

EasyLinux Heftarchiv

Ubuntu User Heftarchiv

Ubuntu User Heftarchiv

Partner-Links:

Shopping
Topsuche
 
Yatego Deutschlands größte Shoppingmall. 10000 Shops,
3.5 Mio Artikel. Alle Bestseller, Servertechnik und Technik Themenwelten.

Notebooks und Netzwerkhardware bei Mercateo günstig kaufen.
Internet Telefonie mit VoIP Telefonen von Gigaset
Das B2B Portal www.Linx.de informiert über Produkte und Dienstleistungen.
Günstige Digitalkameras finden Sie im Preisvergleich.

Blick ins Innere

Kernel übersetzen und installieren.

Bau und Installation

Die folgende Anleitung gilt für die aktuellen Kernelversionen 2.6.x. Das erste Kommando erstellt den komprimierten Kernel einschließlich der beim Booten notwendigen Entpackroutinen. Die folgenden Zeilen kompilieren und installieren die passenden Kernelmodule.

make bzImage
make modules
make modules_install

Sie können auch alles in einer Zeile erledigen:

make bzImage modules modules_install

Jetzt ist erst mal der Rechner dran. Der Ausgabe ist ab Version 2.6.x wesentlich übersichtlicher geworden. Wie Abbildung 7 zeigt, wird nicht mehr die komplette Befehlszeile ausgegeben. Sie können den neuen Kernel mit make bzdisk auch auf einer Diskette speichern. Das erlaubt, den neuen Kernel zu booten, ohne den Bootmanager der Festplatte anzupassen.

Abbildung 7: Anstelle seitenlanger Ausgaben zeigt Kernel 2.6 nur die gerade bearbeiteten Dateien an: die Übersetzung des Kernels wird damit deutlich übersichtlicher.

Ist alles fehlerfrei abgeschlossen, befindet sich der generierte Kernel bzImage im Unterverzeichnis arch/i386/boot. Den kopieren Sie nun an die richtige Stelle, typischerweise /boot oder das Stammverzeichnis /. Das folgende Beispiel kopiert den Kernel und hängt dabei die Versionsnummer an:

cp arch/i386/boot/bzImage /boot/bzImage-2.6.2

Jetzt fehlt noch der Eintrag für den Bootloader. Auf eine RAM-Disk sollten Sie (zumindest für den ersten Start) verzichten. Das Gleiche gilt für den (oft bei Red Hat zu findenden) Eintrag root=LABEL=xx. Der neue Kernel wird zusätzlich zu den vorhandenen Versionen eingetragen. So kann im Fehlerfall die alte Version gestartet werden. Für den Eintrag gilt: Einen vorhandenen Linux-Eintrag kopieren, modifizieren und die Datei abspeichern. Ein Eintrag in die GRUB Konfigurationsdatei /boot/grub/grub.conf sieht beispielsweise wie folgt aus:

title   Linux (2.6.2)
        root (hd1,0)
        kernel /boot/bzImage-2.6.2 ro

Damit ist bei GRUB auch schon alles erledigt.

Für LILO-Anwender, ist der Ablauf identisch. Ein typischer Eintrag in die Konfigurationsdatei /etc/lilo.conf ist:

image=/boot/bzImage-2.6.2
        label=Linux (2.6.2)
        read-only

Nach dem Speichern der Konfigurationsdatei muss das Kommando lilo aufgerufen werden!

Nach dem Neustart kann der Menü-Punkt Linux (2.6.2) ausgewählt und damit der "Neue" gestartet werden. Die Ausgaben beim Systemstart geben Auskunft über den Erfolg des Unternehmens "Eigener Kernel". Gibt es beim Neustart Probleme (Kernel bootet nicht oder eine Unmenge an Fehlermeldngen), dann nur keine Panik. In diesem Fall sollten zunächst die Fehlermeldungen analysiert, und im Anschluss daran der "Alte" Kernel gestartet werden. Bei einer weiteren Kernelkonfiguration können dann die Fehler schrittweise beseitigt werden.

Abbildung 8: Die Startmeldungen liefern mitunter einige Neuigkeiten. So bringt Kernel 2.6.x eine neue IDE-CD-Brenner Schnittstelle mit.

Wie in Abbildung 8 zu sehen ist, zeigen die Startmeldungen jede Menge interessanter Details – die Sie nicht alle auf Anhieb verstehen müssen. Das Kommando dmesg zeigt diese Meldungen noch einmal an, wenn Linux bereits läuft.

Achtung: Unter Umständen wird beim Neustart auf das Fehlen von Hardwarekomponenten hingewiesen. Behalten Sie in diesem Fall die alten Einstellungen bei.

Hinweis: Die Konfiguration beginnt mit dem Aufruf vom make mrproper aus dem Sourceverzeichnis heraus. Damit wird auch die aktuelle Konfigurationsdatei .config gelöscht. Um auf die bis dato gemachte Konfiguration aufbauen zu können sollte die Konfigurationsdatei vorher gesichert, werden.

mv .config save
make mrproper
mv save .config
make menuconfig

Ist die Konfiguration unter einem anderen Namen gespeichert wurden, kann sie zu Beginn der Konfiguration eingelesen werden.

Kasten 2: Hinweise für Red-Hat-Benutzer

Damit bei Red Hat die Module automatisch geladen werden, ist eine Modifikation des Boot-Skriptes /etc/rc.d/rc.sysinit vorzunehmen. Hierzu sind ROOT-Rechte erforderlich. Um Herauszufinden, ob Module verwendet werden, wird in der Datei /proc/ksyms nach dem Eintrag nomodules gesucht. Für Kernel 2.6.x (und auch schon einigen vorhergehenden Versionen) steht dieser Eintrag, falls jemals vorhanden, in der Datei /proc/modules. Im gezeigten Auszug ist die Orginalzeile mit # deaktiviert, und die abgeänderte Zeile darunter eingefügt worden.

#if ! LC_ALL=C grep -iq nomodules /proc/cmdline 2>/dev/null && [ -f /proc/ksyms ]; then
if ! LC_ALL=C grep -iq nomodules /proc/cmdline 2>/dev/null && [ -f /proc/modules ]; then
    USEMODULES=y
fi

Fazit

Auch Nicht-Profis können einen Kernel übersetzen und installieren - schließlich fangen alle mal klein an. Bei Problemen ist ein "Zurückschalten" auf die vorherige Version jederzeit möglich.

Wenn Sie einen neueren Kernel installieren wollen, dann natürlich die aktuellste Version, in diesem Artikel die Version 2.6.6. Für neuere Versionen ersetzen Sie die entsprechende Nummern in den beschriebenen Befehlen.

Zum Abschluss noch ein Tipp: Testen Sie den "Neuen" ausgiebig, bevor Sie den "Alten" aus Ihrem System entfernen.

Der Autor

Roman Jordan beschäftigt sich schon seit den Zeiten, wo noch mit Disketten installiert wurde, mit dem Thema Linux. Im richtigen Leben arbeitet er als Systemprogrammierer für kleinere aber dennoch leistungsfähige Systeme.

Glossar

Link

Ein symbolischer Link ist ein Verweis (Verzeichniseintrag) auf eine Datei. Ein Link kann wie eine "normale" Datei verwendet werden. Das Löschen eines Links führt nicht zum Löschen der Datei. Symbolische Links werden mit dem Kommando: ls -s vorhandene_Datei sym_Link_Datei angelegt.

Infos

[1] Hauptseite Linux Kernel: http://www.kernel.org/

[2] Suchmaschine für RPM-Pakete: http://rpmfind.net/

Einem Freund empfehlen    Druckansicht Bookmark and Share
Kommentare

Hits
Wertung: 0 Punkte (0 Stimmen)

Schlecht Gut

Infos zur Publikation

Infos zur Publikation

LinuxUser 06/2012

Aktuelle Ausgabe kaufen:

Heft bestellen Heft als PDF kaufen

LinuxUser erscheint monatlich und kostet in der Nomedia-Ausgabe EUR 5,50 und mit DVD EUR 8,50. Weitere Informationen zum Heft finden Sie auf der LinuxUser-Homepage.

Im LinuxUser-Probeabo erhalten Sie drei Ausgaben für 3 Euro. Das Jahresabo (ab EUR 56,10) können Sie im LNM-Shop bestellen.

Tipp der Woche

Adobe AIR
Adobe-AIR-Programme installieren und (manuell) starten
Tim Schürmann, 14.05.2012 13:09, 0 Kommentare

Es gibt sie noch: neue Anwendungen, die Adobes Integrated Runtime voraussetzen. Aktuellstes und vermutlich auch größtes Beispiel ist das Adventure Botanicula

Aktuelle Fragen

gibt es ein Kommandozeilen Tool, um ein X11-Fenster in ein Anderes einzubetten?
GoaSkin , 21.05.2012 16:44, 0 Antworten
Das XEmbed-Protokoll ist u.A. dazu gedacht, dass man eine X11-Anwendung in eine andere wie ein Wi...
Apache2, Options -Indexes geht nicht
no no, 12.05.2012 19:01, 8 Antworten
Habe in apache2.conf folgendes stehen: Options -Indexes ...
LInux auf Dell LS H500
Andreas Endresl, 09.05.2012 08:54, 2 Antworten
Habe einen alten Dell Latitude LS H500 nur mit ext. Floppy und CD es geht nur immer eines von den...
Datenwiederherstellung unter Ubuntu 12.04 mit "Simple Backup" nach Umzug von Linux Mint
Christian Lottmann, 07.05.2012 13:33, 0 Antworten
Vor dem Umzug auf Ubuntu 12.04 habe ich unter Linux MInt mit "Simple Backup" voll (15.4.2012) und...
DKMS für den propritären NVIDIA-Treiber
Commander Data, 26.04.2012 22:02, 2 Antworten
Hallo an die Gemeinde. Ich habe hier ein interessantes Stück openSuSE gefunden. http://forums.op...