Kernel als DEB bauen
Autor: sledge0303
E-Mail: sledge@nixhelp.de
Version: 1.1
Stand: 27.02.2008 10:30 Uhr
In diesem Howto wird erklärt, wie man einen Kernel-DEB selbst erstellen sowie Patches in die Sourcen einspielen kann.
Der Autor übernimmt keine Haftung wenn ihr einen nicht funktionierenden Kernel erstellt!
ACHTUNG ACHTUNG ACHTUNG ACHTUNG
Aus gegeben Anlass möchte ich noch auf folgende Sachen hinweisen:
Alle meine Howtos und Tutorials dienen lediglich als Hilfmittel für Installationen und ersetzen KEIN fehlendes Grundlagenwissen in Sachen Linux und Administration!!!
Wenn du kein Grundlagenwissen vorweisen kannst oder nicht in der Lage
bist alle Schritte nachzuvollziehen, solltest du dich dringend selbst
fragen ob es unbedingt ein eigener Server sein muss oder jemanden mit
Ahnung auf diesem Gebiet mit der Installation deines Servers
beauftragen.
1. Installation der Abhängigkeiten
apt-get install -y kernel-package libncurses5-dev fakeroot wget bzip2 dash patch make automake
Anschließend wechseln wir nach /usr/src
cd /usr/src
und laden uns die Kernelsourcen. Wir wählen den Kernel 2.6.24.2 und patchen diesen mit dem grsec-patch.
wget http://www.de.kernel.org/pub/linux/kernel/v2.6/linux-2.6.24.2.tar.gz wget http://www.grsecurity.net/~spender/grsecurity-2.1.11-2.6.24.2-200802192340.patch
Danach entpacken wir die Source und wechseln in das Verzeichnis rein
tar zxf linux-2.6.24.2.tar.gz cd linux-2.6.24.2
2. Patchen und Config
Als erstes Patchen wir die Sourcen mit dem grsec Patch. Beachtet aber bitte, falls neuere Patche im Gegensatz zu diesem Howto bereits angeboten werden, diese dann auch den entsprechenden Kernelsourcen anpassen.
patch -Np1 < ../grsecurity-2.1.11-2.6.24.2-200802192340.patch
Benutze deine alte config oder erstelle mit Hilfe der Ausgaben von lspci und lsmod eine neue.
Alternativ können wir die neuste .config von OVH benutzen:
wget ftp://ftp.ovh.net/made-in-ovh/bzImage/2.6-config-xxxx-std-ipv4-32 mv 2.6-config-xxxx-std-ipv4-32 .config
Bei einer Intel Pro/1000 ist ab Kernel 2.6.24 kein Patch mehr notwendig, allerdings muss der PCI-Express Treiber für diese NIC zusätzlich statisch aktiviert werden
CONFIG_E1000=y CONFIG_E1000_NAPI=y # CONFIG_E1000_DISABLE_PACKET_SPLIT is not set CONFIG_E1000E=y
3. Kernel kompilieren
fakeroot make-kpkg --revision=etch.personal1 kernel_image --config menuconfig
Um grsec zu aktivieren, musst du unter der Kerneloption 'Security
Options –> grsecurity –> grsecurity statisch in den Kernel
aktivieren (*). Danach hast Optionen wie 'Security Level'. Diesen nicht
höher als Medium stellen!
Man kann sein System, die chroots sehr schön mit grsec absichern,
genausoschnell kann man sich aussperren oder die Kiste kommt wegen
paranoider Sicherheitseinstellungen nicht mehr hoch oder blockierst den
Netzzugang deines Servers…
Sind alle Einstellungen vorgenommen worden, die letzte Messe gesungen,
speicherst du alle getätigten Einstellungen ab und anschließend wird
'automatisch' im Anschluss das .deb gebaut. Es befindet sich
anschließend im /usr/src Verzeichnis, also eine Ebene tiefer.
Solltet ihr während des kompilierens einen Fehler bekommen und
make-kpkg bricht ab, diesen entsprechend beheben und vor dem erneuten
kompilieren
make-kpkg clean
ausführen. Damit werden die temporären Dateien von make gelöscht
und so verhindert ihr diesen gleichen Fehler im nächsten Vorgang.
Installieren kannst das deb mit
dpkg -i $PAKETNAME.deb
Jetzt noch schnell den Bootloader updaten
LILO:
nano /etc/lilo.conf
GRUB:
update-grub
Zuletzt angesehen: » kernel_selbst_bauen-ovh » kernel_selbst_bauen