Wie man einen 2.6.x Kernel auf Slackware Linux baut


Warnung!: Wer am Kernel arbeitet und etwas falsch macht kann sein System so zerschießen, daß es neuinstalliert werden muß. Alle Aktionen auf eigene Gefahr! Niemand Garantiert, daß alle Aktionen die hier beschrieben, sind 100%ig richtig sind und in jedem Fall funktionieren. Wir übernehmen keine Haftung für Schäden die durch Befolgen der Anleitung entstehen!

Vorarbeiten:

image = /boot/vmlinuz-generic-2.6.13
root = /dev/hda1 #Deine Rootpartition, siehe evtl. anderen Linuxkernel und/oder original /etc/lilo.conf
label = Backup
read-only

Danach als root einmal "lilo" ausführen
Wer ganz sicher gehen will macht jetzt einen reboot und schaut ob der Kernel ohne Fehler bootet.

Kernelkonfiguration:
* entweder ganz neu, dann kannst du aus
make config (die Möglichkeiten der Konfiguration werden nacheinander abgefragt)
make menuconfig (man bekommt ein nettes Menü und kann bequem mit den Cursortasten navigieren; benötigt ncurses-5.x)
make xconfig (die Konfiguration kann unter X gemacht werden, benötigt natürlich eine funktionierende X-installation)
make gconfig
make qtconfig

wählen.
Wichtig! Bei Konfigurieren vor allem darauf achten das die Alsa-Module in den Kernel einkompiliert werden (sonst geht der Ton mit dem neuen Kernel nicht). Dies muss auch nach einem "make oldconfig" durchgeführt werden (z.B. mit "make menuconfig") da der originale Slackware-Kernel ohne Alsa kompiliert wurde!
* ausgehend von einer alten Konfiguration:
Kopiere die configdatei des alten Kernels nach ./.config , wenn du vom Originalslackwarekernel ausgehen willst, dann:
cp /boot/config .config
Anschließend make oldconfig, um neuhinzugekommene Features zu konfigurieren (ggf. alle Rückfragen mit "Enter" bestätigen um die Vorgabewerte zu übernehmen) und evtl. aus make config, make menuconfig und make xconfig wählen, wenn man noch was ändern will.

Kernel kompilieren und installieren:
make (Jetzt kann man je nach Rechner erstmal einen Kaffee trinken gehen, einen Film schauen oder einfach nur auf dem Balkon eine Zigarette rauchen ;-))

Wenn das Fehlerfrei durchgelaufen ist (wovon wir jetzt einmal ausgehen) dann sollten jetzt der Kernel und die gewünschten Kernel Module kompiliert sein.
Wenn noch der Original-Slackware-Kernel läuft, dann sind "vmlinuz" und "System.map" Symlinks auf die Kernel-Dateien. Um sicherzugehen das der Original-Kernel beim Installieren nicht überschrieben wird, löschen wir diese Symlinks
rm /boot/vmlinuz /boot/System.map
die Kernelmodule mit
make modules_install
installieren.
den Kernel selbst mit
make install
installieren.



Troubleshooting:
Wähle bei lilo den Backupkernel, schau was du an der Kernelconfiguration falsch gemacht hast, ändere das und kompiliere neu.
Jetzt weißt du warum man vor Neuinstallation eines Kernels immer eine Lauffähige Version haben sollte. Entweder dein System ist noch soweit ok, daß du die Konfiguration überprüfen und neubauen kannst, oder aber du bootest von der Slackware CD, mountest deine Rootpartition nach /mnt, machst ein chroot /mnt und baust von dort deinen Kernel neu oder installierst Slackwarepakete eines lauffähigen Kernels.

Englische Version

Kategorien
CategoryTutorials
Valid XHTML :: Valid CSS: :: Powered by WikkaWiki