Bin leider zur Zeit auf der Arbeit und habe nicht sehr viel Zeit für erklärungen, möchte dir aber gerne mal ein "Kernel-Install-Howto" mitgeben. Vielleicht hilft dir das ja schon. (Leider noch vom 2.4.25)
Den aktuellen (oder auch ältere) Linux Kernel bekommt stets frisch von
http://www.kernel.org . Dies ist der offizielle Linux Kernel, ohne distributionseigene Patches, wie sie etwa Suse extensiv verwendet. Für die meisten Zwecke verwendet man am besten den "latest stable" Kernel, also den aktuellsten stabilen Kernel. Jeder Kernel hat hier eine Zeile, zuerst kommt der stabile Kernel, dann einen Patch auf die neueste Pre Version zum nächsten stabilen Kernel. Schließlich folgt noch die "latest beta", diese Versionen tragen eine ungerade Versionsnummer (2.5). Dies sind Entwicklungskernel, die auch wirklich nur von solchen oder interessierten verwendet werden sollten. Für ein Produktionssystem sind sie nicht geeignet. Rechts sieht man verschiedene Links, F für den kompletten Download eines Kernels, V für einen Patch der bestehende Kernel Sourcen auf den neuesten Stand bringt. Ich verwende F, denn ein das Patchen eines durch die Distribution mit diversen Gimmicks stark veränderten Kernels kann eine riskante Sache sein. Tipp: Vor allem wenn man auf einem entfernten PC arbeitet sind die Quellen mit dem kleinen Programm wget schnell heruntergeladen. Man muss allerdings die aktuelle Version und den Pfad kennen, der sich allerdings normalerweise nicht ändert. So schnell geht's: wget
http://www.kernel.org/pub/linux/kernel/v2.4/linux-2.4.25.tar.gz Die Kernel Quellen bekommt man als tar.gz. Üblicherweise speichert man sie nach /usr/src. Dort sollte man überprüfen ob bereits ein Verzeichnis mit Namen "linux" besteht. Wenn ja, sollte es verschoben werden, etwa mit
mv linux linux-2.4.10
oder ähnlich. Dann kann man den Kernel entpacken.
tar -xzvf linux-2.4.25.tar.gz
Der Dateiname muss natürlich für neuere Versionen angepasst werden. Die Kernel Quellen landen im Verzeichnis /usr/src/linux. Dort hinein sollte man nun wechseln. Nun geht es ans Konfigurieren des Kernels. Die Kernel Konfiguration liegt in der Datei .config, und kann mit einer bestehenden .config überschrieben werden. Vorsicht, dieses Verfahren kann zwar eine Vereinfachung darstellen, nützt aber wenig, wenn man einen Großteil der Kernel Optionen nicht kennt. Besonders bei größeren Versionssprüngen ändert sich schonmal der Name einer Option oder sie wird durch ein neues Feature ersetzt, deshalb schützt diese Methode nicht vor dem gewissenhaften Überprüfen der Kernel Optionen. Zum Einstellen der Parameter gibt es einige Möglichkeiten.
make xconfig
öffnet ein Fenster mit Buttons durch das man sich durchklicken kann und die gewünschten Optionen verändern kann. Für diese Methode benötigt man X11. Da man das auf Servern etc. oft nicht zur Verfügung hat, gibt es das gleiche Menü auch in einer Textausführung für die Konsole:
make menuconfig
Schließlich gibt es noch die älteste Methode, die einfach alle Fragen durch geht und Antworten verlangt.
make config
Das kann allerdings nicht gerade als benutzerfreundlich bezeichnet werden, deshalb sollte man eine der beiden oberen Methoden wählen. Falls menuconfig nicht startet, liegt es meistens daran dass die nötige Bibliothek libncurses5 fehlt. Sie muss dann, je nach Distribution verschieden, nachinstalliert werden. Im Menü bietet fast jede Option eine Hilfe Schaltfläche an, die oft auch nützliche Ratschläge bietet: "If you are not sure, say Y". An diese Tipps lohnt es sich oft sich zu halten, es sei denn man weiß es wirklich besser. Hat man alle Optionen wie gewünscht konfiguriert schließt man den Dialog und bestätigt die Frage ob gespeichert werden solle. Nun kann der Kernel kompiliert ("gebacken") werden. Das geschieht alles mit der Zeile
make dep clean modules modules_install bzImage
Dies kompiliert den Kernel, die Kernel Module und installiert die Module auch gleich passend. Den Kernel sollte man von Hand installieren. Er liegt nach einer solchen Kompilierung in arch/i386/boot/bzImage. Dieses Kernel Image sollte man an einen passenderen Ort, wie etwa /boot schieben.
cp arch/i386/boot/bzImage /boot/vmlinuz-2.4.25-neu
Dann muss der Kernel in den Bootmanager eingebunden werden. Auf keinen Fall sollte man den bestehenden Kernel durch den neuen ersetzen. Möglicherweise haben Sie etwas wichtiges vergessen, was sich erst beim Booten oder beim Arbeiten mit dem Kernel herausstellt. Dann ist es sehr unpraktisch erst die Bootdiskette heraussuchen zu müssen und durch den kleinen Diskettenkernel auf Features verzichten zu müssen, an die man sich bei der Arbeit gewohnt hat. Wenn Sie noch nicht gut mit der Textkonsole umgehen können, kann es ein Problem darstellen dass beim Rettungssystem der passende Grafiktreiber nicht beiliegt. Deshalb sollte man mindestens die letzte funktionierende Konfiguration beibehalten, eigentlich spricht ja auch nichts dagegen eine längere Liste mit diversen Kernel Versionen bereitzuhalten. Der Bootmanager LILO wird in der Konfigurationsdatei /etc/lilo.conf konfiguriert. Ein minimaler Eintrag sieht so aus:
image=/boot/vmlinuz-2.4.25-neu
label=Linux-2.4.25
Man muss darauf achten dass das Label keine Leerzeichen enthält und eindeutig ist. Nun sollte ein Aufruf von "lilo" als root eine ähnliche Ausgabe erzeugen:
....
Added Linux-2.4.25
....
Nun kann das System neugestartet werden, und der Kernel in LILO zum booten ausgewählt werden, je nach Konfiguration über einen Eingabeprompt oder ein Menü.