F.6 Befehl Uname verwenden

Mit dem Befehl uname können Sie die aktuelle Kernel-Version Ihrer Linux-Umgebung ermitteln. Sie müssen ggf. das Ergebnis aus dem Befehl uname ändern, damit die Kernel-Versionen übereinstimmen.

Mit den folgenden Schritten verändern Sie den uname-Befehl, um den erforderlichen Wert einzustellen:

  1. Geben Sie zum Ermitteln der aktuellen Kernel-Version Folgendes ein:

    uname -r
    

    Notieren Sie sich die Versionsnummer, Sie werden sie in Schritt 4 benötigen. Dieses Beispiel zeigt Version 2.6.13-15-smp von einem SLES 9 SP2 Server.

  2. Geben Sie zum Erstellen eines neuen Verzeichnisses Folgendes ein:

    mkdir /bin/orig
    
  3. Geben Sie zum Verschieben der uname-Binärdatei zum Verzeichnis /bin/orig Folgendes ein:

    mv /bin/uname /bin/orig/uname
    
  4. Erstellen Sie mithilfe eines Linux-Editors (beispielsweise vi) die Datei /bin/uname, die folgende Zeilen enthält:

    #!/bin/sh
    #uname
    if [ $KRNLVERSION"a" = "a" ] ; then
      if [ $(/bin/orig/uname -r) = "2.6.13-15-smp" ] ; then
              export KRNLVERSION=2.6.13-15-smp
         else
              export KRNLVERSION=2.4.31
         fi
    fi
    if [ $1"a" = "-ra" ] ; then
         echo $KRNLVERSION
    else
         /bin/orig/uname $*
    fi
    

    WICHTIG:Ersetzen Sie die Strings 2.6.13-15-smp mit der Version aus Schritt 1.

  5. Damit das neue Befehlsskript uname ausführbar ist, geben Sie Folgendes ein:

    chmod +x /bin/uname
    
  6. Geben Sie die folgende Zeile ein, um über den Befehl uname -r beim Kompilieren eines Moduls eine bestimmte Version einzustellen:

    export KRNLVERSION="2.6.5-7.191"
    
  7. Befolgen Sie beim Kompilieren des Moduls die Herstelleranweisungen und verwenden Sie den make-Befehl.

  8. Setzen Sie uname zurück, sodass es die tatsächlichen Werte zurückgibt:

    unset KRNLVERSION