Debian 4 - Kernel kompilieren und ersetzen

    • Official Post

    Dieses kleine Tutorial beschreibt den Vorgang wie man unter Linux Debian 4 Etch einen neuen Kernel kompilliert und den vorhandenen Kernel ersetzt.
    Dieses Tutorial ist ohne Gewähr auf Vollständigkeit und Richtigkeit.
    Es wurde speziell geschrieben wie der Kernel auf einem Root OVH Server installiert werden kann.


    • Putty starten und per SSH auf den Linux Root-Server connecten
    • Als root Benutzer einloggen.
    • Code
      apt-get install -y kernel-package libncurses5-dev wget patch make automake


      Installiert Komponenten die für die Kompillierung notwendig sind.

    • Code
      cd /usr/src


    • Code
      wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.27.5.tar.bz2


      Ladet den zurzeit neusten Kernel ins Verzeichnis /usr/src herunter.

    • Code
      bunzip2 -c linux-2.6.27.5.tar.bz2 | tar x


      Entpackt das tar.bz2 Archiv in den Ordner linux-2.6.27.5

    • Code
      ln -s linux-2.6.27.5 linux


      Erstellt einen Link /linux auf das Verzeichnis /usr/src/linux

    • Code
      cd linux-2.6.27.5


    • Code
      wget ftp://ftp.ovh.net/made-in-ovh/bzImage/2.6-config-xxxx-std-ipv4-32


      Ladet die Config-Datei vom OVH-FTP herunter für die aktuelle Distribution: Debian Etch 4.
      Dies ist nur notwendig wenn die aktuelle Config möglicherweise bereits geändert wurde.
      Auf einem nicht OVH-Root kann einfach die vorhandene Config-Datei verwendet werden. Bzw. in das /usr/src/linux-2.6.27.5 Verzeichnis kopiert werden (aktuelle config sollte unter /usr/src zu finden sein)

    • Code
      mv 2.6-config-xxxx-std-ipv4-32 .config


      Verschiebt die OVH-Config Datei nach .config

    • Code
      vi .config


      Öffnet die config-Datei mit VI

    • Im VI muss nach folgender Zeile gesucht werden: CONFIG_LOCALVERSION="-nopatch-xxxx-ipv4-32"
    • Die Zeile muss so abgeändert werden --> CONFIG_LOCALVERSION=""
    • Code
      :wq

      Mit diesem Befehl wird die .config-Datei gespeichert und VI beendet

    • Code
      make menuconfig


      Startet das Config-GUI um verschiedene Optionen für das spätere Kompillieren vor zunehmen.
      Da ich mich noch nicht so gut auskenne, lasse ich einfach alles auf Standard und Beende das GUI wieder und speichere die Änderungen ab.

    • Code
      make &&


      Diesen Befehl eingeben und Anschliessend...

    • Code
      make modules_install


    • Code
      make install


      Der Kompilierungsvorgang wird gestartet... Dies kann je nach System einige Minuten (bis Stunden) dauern.
      Auf einem Core2Duo 2.8GHz mit 4GB RAM dauert der Vorgang etwa 5 Minuten

    • Code
      nano /etc/lilo.conf


      Öffnet die lilo.conf Datei mit dem NANO

    • Code
      image=/boot/vmlinuz-2.6.xx


      Nach dieser Zeile suchen und mit der aktuellen Versionsnummer ändern.

    • Code
      image=/boot/vmlinuz-2.6.27.5


    • lilo.conf speichern und NANO beenden
    • Code
      /sbin/lilo


      Schreibt die Änderungen in den LILO-Bootloader

    • Code
      reboot -n


      Alles wurde vorbereitet für den neuen Kernel und ein Neustart steht noch bevor.

    • Kann man nach einem Neustart erfolgreich mit Putty einloggen und es erscheint folgende Zeile: Linux nsxxxxxx.ovh.net 2.6.27.5 #1 SMP Wed Nov 12 16:10:17 CET 2008 i686 GNU/Linux wurde der neue Kernel erfolgreich gestartet!

    Developer | deh-vel-up-ur

    noun


    1 a person or thing that develops stuff: in e.g. software developer, someone having knowledge of a particular topic beyond the level of knowlegde needed for ordinary usage of that topic

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!