Spickzettel Kernel bauen
Vorhersage des nächsten Kernelzweigs
Man nehme ein aktuelles Debian Testing System mit folgenden zusätzlichen Paketen:
- build-essential
- fakeroot
- gnupg2
- dpkg-dev
- bison
- flex
- bc
- libelf-dev
- libssl-dev
Kernel bauen:
- Alles im Folgenden als normaler User. Nicht als root!
- „*“ bedeutet im Folgenden immer Ergänzung der Kernelversion des Kernels, das kompiliert werden soll.
- Key von Greg Kroah-Hartman <greg@kroah.com> importieren:
$ gpg2 --recv-key 38DBBDC86092693E
- Aktuelles TAR und Signatur von https://www.kernel.org/ herunterladen und entpacken:
$ unxz linux-*.tar.xz
- TAR verifizieren:
$ gpg2 --verify linux-*.tar.sign
- TAR auspacken:
$ tar -xaf linux-*.tar
- Konfiguration von bereits installiertem Distro Kernel in das Verzeichnis der gerade heruntergeladenen Kernelquellen kopieren:
/boot/config-* nach .config kopieren.
- In der Datei .config folgendes editieren:
- CONFIG_DEBUG_INFO auf „N“ (nein/no) setzen.
- CONFIG_SYSTEM_TRUSTED_KEYS auskommentieren mit „#“
- Gewünschte Umgebungsvariablen für die späteren Pakete setzen:
- export EMAIL="ploenk@weissnich.de"
- export DEBFULLNAME="Plönk Weißnich"
- Aus der .config des Distro Kernels, die für das neue Kernel erzeugen (alte Einstellungen behalten, für unbekannte bzw. neue Optionen die Defaults setzen):
$ make olddefconfig
- Kompilieren und DEB Pakete erzeugen mit <n> parallelen Threads (mit lokaler Versionsmarkierung):
$ time make -j<n> deb-pkg LOCALVERSION=-ploenk
- Fertig!