====== Kernel Bauen ====== Wie baue ich mir einen eigenen Linuxkernel? Hier die Antwort. Die hier gestellten Informationen habe ich von: [[http://wiki.ubuntu-forum.de/index.php/Kernel_bauen|Kernel_bauen]] ===== Vorarbeiten ===== apt-get install build-essential kernel-package libncurses5-dev cd /usr/src sudo apt-get install linux-source ln -s Zielordner linux cd linux ===== Konfigurieren ===== Eventuell spezielle Hardware finden, damit die Kernelmodule mit Kompiliert werden. Mit folgenden Befehlen läst sich die im PC verbaute Hardware und dessen geladene Kernelmodule anzeigen: lspci -v lsusb -v Nun noch die bisherige alte Kernelkonfiguration übernehmen. Entweder cp /boot/config-`uname -r` /usr/src/linux/.config und danach die Konfiguration starten mittels make menuconfig oder make oldconfig So werden die alten Konfigurationseinstellungen übernommen und es kann sofort mit dem Kompilieren begonnen werden. Verwendet man eher, wenn der Kernel einfach nur ein Update sein soll. ===== Kompilieren ===== Zunächst erst mal aufräumen bzw. von alten Kompilierungsüberresten säubern: make-kpkg clean Nun das .deb Paket bauen lassen: make-kpkg --initrd --revision //Kernelversion// binary //Kernelversion// ist die Versionsnummer des zu kompilierenden Kernels, z.B.: 2.6.24.3 Mit --initrd baut man sich sogleich die richtige initramfs für den Kernel und muß dies nicht später manuell erledigen. ===== Installieren ===== Nachdem der Kernel nach ewig und drei Tagen kompiliert wurde kann dieser endlich instaliert werden. Die .deb Pakete liegen nun im Verzeichniss ///usr/src/// dpkg -i linux-//Kernelvedpkg -i linux-*.debrsion//.deb Wenn man nun neu startet, dann bedindet sich im Grubmenü der neue Kerneleintrag der gewählt werden kann. Falls es beim Booten dennoch zu einer //Kernelpanic// kommen sollte, so ist in der Kernelkonfiguration etwas vergessen worden, das zum Booten wichtig ist. Man kann dann nur den alten Kernel booten und die Konfiguration nochmal anpassen mittels make menuconfig Viel Erfolg und Teu, teu, teu