Mit dem Befehl uname können Sie die aktuelle Kernel-Version Ihrer Linux-Umgebung ermitteln. Jedoch müssen Sie eventuell die Ergebnisse des Befehls uname modifizieren, damit Ihre Kernel-Versionen passen.
In den folgenden Schritten wird der Befehl uname so geändert, dass er den benötigten Wert liefert:
Um Ihre aktuelle Kernel-Version zu beziehen, geben Sie Folgendes ein:
uname -r
Schreiben Sie die Versionsnummer auf, damit Sie sie in Step 4 verwenden können. Dieses Beispiel verwendet Version 2.6.13-15-smp aus einer SLES 9 SP2-Installation.
Um ein neues Verzeichnis zu erstellen, geben Sie Folgendes ein:
mkdir /bin/orig
Um die uname-Binärdatei in das soeben erstellte Verzeichnis /bin/orig zu verschieben, geben Sie Folgendes ein:
mv /bin/uname /bin/orig/uname
Erstellen Sie mithilfe eines Linux-Editors (beispielsweise vi) die Datei /bin/uname, die folgende Zeilen enthält:
#!/bin/sh#unameif [ $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
IMPORTANT:Ersetzen Sie die Zeichenfolgen “2.6.13-15-smp” durch die Version, die Sie in Schritt 1 ermittelt haben.
Damit das neue uname-Befehlsskript ausführbar wird, geben Sie Folgendes ein:
chmod +x /bin/uname
Geben Sie Folgendes ein, damit der Befehl uname -r eine bestimmte Version zurückgibt, z. B. beim Kompilieren eines Moduls:
export KRNLVERSION="2.6.5-7.191"
Folgen Sie den Anleitungen des Herstellers und kompilieren Sie das Modul mit dem passenden make-Befehl.
Setzen Sie uname zurück, damit es aktuelle Werte zurückgibt:
unset KRNLVERSION