Patchen eines Kernels Beipiel
Zur Navigation springen
Zur Suche springen
Geschichte
- Man hat früher Kernel aus 2 Gründen gepatcht
- Man wollte eine Funktion hinzufügen.
- Man wollte weniger Daten herunterladen.
- Beides ist obsolet.
Der alte Weg
Sie haben diesen Kernel
- Der kernel liegt entpackt mit tar -C /usr/src -xvzf linux-2.4.14.tar.gz
- unter /usr/src/linux#
- Sie wollen einen Kermelupdate auf 2.4.15 machen.
- Nun haben sie die Möglichkeit den Kompleten 2.4.15 Kernel runter zuladen oder einen Patch auf 2.4.15
Runterladen des Patches
In Kernel Verzeichnis wechseln
- cd linux
Eine Trockenübung
- zcat ../patch-2.4.15.gz | patch -p 1 --dry-run
Der Patch
- zcat ../patch-2.4.15.gz | patch -p 1
Der neue Weg
- Diese Patches sind nicht inkrementell, das bedeutet, dass beispielsweise der Patch 5.7.3 nicht auf den Patch 5.7.2 angewendet wird.
- Er wird angewendet auf die Grundversion des Kernel-Quellcodes 5.7.
- Um den Patch 5.7.3 auf den vorhandenen Kernel-Quellcode 5.7.2 anzuwenden, musst du zuerst den Patch 5.7.2 rückgängig machen.
- Dann hast du den Ausgangszustand des Kernel-Quellcodes 5.7
- Auf diesen kann man dann den neuen Patch 5.7.3 anwenden.
Vorgehensweise
Ins Verzeichnis wechseln
- cd ~/linux-5.7.2
Auf Version 5.7 zurück patchen
- xzcat ../patch-5.7.2.xz | patch -p1 -R
Auf Version 5.7.3 patchen
- xzcat ../patch-5.7.3.xz | patch -R
- cd ..
Verzeichnis umbenennen
- mv linux-5.7.2 linux-5.7.3