====== Einen Vanilla-Kernel nach dem Debian-way bauen====== ===== Benötigte Pakete ===== Benötigt werden: * build-essential * kernel-package * fakeroot * libncurses5 * libncurses5-dev * libncursesw5 * libncursesw5-dev * libstdc++6 * libstdc++6-dev ===== Vorbereitung ===== * $ = User, #= root! * Zunächst werden die Sourcen des aktuellen Kernels von Kernel.org benötigt: $ wget http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.XX.Y.tar.bz2 * Anschließend werden die Quellen entpackt und in diesen Ordner gewechselt: $ tar -xf linux-2.6.XX.Y.tar.bz2''\\ $ cd /inux-2.6.XX.Y'' * Nun muss die aktuelle Konfigurationsdatei z. B. aus /boot in den Kernelordner kopiert werden $ cp /boot/config-2.6.XX.Y .config'' * Hier kann die Konfiguration noch mit $ make menuconfig an die eigenen Bedürfnisse angepasst werden. Wirkungsvoll ist vor allem die richtige Processor family im Abschnitt "Processor type and features" auszuwählen. Hilfreich ist hier der Befehl # cat /proc/cpuinfo | grep -e family -e model * Nicht vergessen das Makefile um die Revision zu ergänzen, anschließend den Kernel kompilieren: Alle möglichen Pakete erzeugen: $ make-kpkg --initrd buildpackage --us --uc --rootcmd fakeroot Oder nur bestimmte Pakete erzeugen: $ make-kpkg --initrd kernel_image kernel_headers --us --uc --rootcmd fakeroot Die Optionen --us --uc verhindern das signieren der Pakete mit dem GPG-Key des Benutzers. ===== Bauen ===== Zu allerletzt können die gebauten Pakete installiert werden: # dpkg -i linux-*.deb ===== Tipps & Tricks ===== Bei Mehrprozessorsystem empfiehlt es sich, den Kompilationsvorgang in mehrere Jobs zu splitten. Dazu wird in der Datei /etc/kernel-pkg.conf folgende Zeile ergänzt: CONCURRENCY_LEVEL := X X steht hierbei mindestens für die Zahl der Prozessoren, generell ist auch bei einem Einzelprozessorsystem zu empfehlen eine 2 einzutragen.