Historische Kernel kompilieren
Aus Gentoo Linux Wiki
Manchmal verlangt ein Produktivsystem oder der Test einer älteren Software inkl. Kernelmodule eine Kernelversion, die nicht mehr im Portage vorhanden bzw. nicht mehr als distfiles aufzutreiben ist. Für diese Fälle folgt eine kurze Anleitung, wie man sich unter Gentoo in solchen Situationen behelfen kann.
Zunächst läd man die benötigte Kernelversion von kernel.org herunter. Es wird nur die linux-version.tar.bz2 Datei benötigt.
Als nächstes werden ebenfalls die einzelnen Gentoo Patches für die benötigte Kernelversion von sources.gentoo.org heruntergeladen.
Den Kernel-Tarball in das Verzeichnis
/usr/src/linux-version-gentoo
entpacken und die einzelnen Gentoo Patches" per
patch -p1 < /pfad/patch-dateiname
einarbeiten.
Leider funktioniert genkernel nicht mehr mit historischen Kernelversionen, so dass hier empfohlen wird, den Kernel über den manuellen Weg zu erstellen (siehe Gentoo-Handbuch).
Auch ist die verwendete gcc nicht unerheblich, da viele frühere Kernelversionen sich nicht mit der gcc 4 fehlerfrei kompilieren lassen, so dass in diesen Fällen die gcc 3.4 herangezogen werden muss.
gcc-config gcc-3.4.x-Nummer source /etc/profile
Jetzt kann der Kernel kompiliert werden:
make menuconfig make make modules_install
um ihn dann entsprechend in das /boot-Verzeichnis zu kopieren:
cp arch/i386/boot/bzImage /boot/kernel-version-gentoo
Nicht vergessen, den Kernel in den Bootloader mit aufzunehmen und die gcc zurück zu schalten.
Ein Problem ist die Standardkonfiguration, da die manuelle Einstellung aller Kerneloptionen sehr zeitraubend ist. Daher die folgende Liste von gesammelten Standardkonfigurationsdateien für die jeweiligen Kernel. Hier nicht vergessen, vor dem Kompilieren bei den Kerneloptionen den richtigen Prozessor auszuwählen.
| Kernelversion | standard-config | evtl. distfiles |
|---|---|---|
| 2.6.0 | ||
| 2.6.1 | ||
| 2.6.2 | ||
| 2.6.3 | ||
| 2.6.4 | ||
| 2.6.5 | ||
| 2.6.6 | ||
| 2.6.7 | ||
| 2.6.8 | ||
| 2.6.9 | ||
| 2.6.10 | ||
| 2.6.11 | ||
| 2.6.12 | ||
| 2.6.13 | ||
| 2.6.14 | ||
| 2.6.15 | ||
| 2.6.16 | ||
| 2.6.17 | ||
| 2.6.18 | ||
| 2.6.19 | ||
| 2.6.20 | ||
| 2.6.21 | ||
| 2.6.22 | ||
| 2.6.23 |
