65.5 Hinzufügen oder Aktualisieren von LAN-Treibern

Bei der Entwicklung und Herausgabe neuer LAN-Adapter werden von den LAN-Karten-Herstellern in der Regel ebenfalls neue oder aktualisierte Treiber herausgegeben. Manchmal funktionieren die neuen LAN-Karten einwandfrei mit älteren Treibern, manchmal jedoch erkennen ältere Treiber die neue LAN-Karte nicht und können nicht geladen werden.. Gelegentlich lädt der ältere Treiber, aber die LAN-Karte weist schwere Performance-Probleme auf. Um die volle Leistungsfähigkeit einer neuen LAN-Karte zu sichern, sollten Sie den neuen Treiber laden.

Die folgenden Abschnitte erläutern, wie Treiber bezogen bzw. kompiliert werden:

Informationen, wie Sie Ihre Treiber mit bestimmten Parameter laden, erhalten Sie in Abschnitt 65.5.3, Laden von Treibern mit Parametern.

65.5.1 Beziehen von Treibern

Neue LAN-Treiber sollten vom Hersteller bezogen werden. Die Treiber der meisten LAN-Karten-Hersteller können kostenlos von der jeweiligen Website heruntergeladen werden. Einige Treiber stehen unter www.scyld.com/network zur Verfügung und die Quelle für den Broadcom BCM5700-Treiber kann über http://www.broadcom.com/drivers/downloaddrivers.php heruntergeladen werden.

Sollte ein Hersteller einen Binärtreiber anbieten, der speziell für die von ZENworks verwendete Kernel-Version kompiliert wurde, sollten Sie sich diesen Treiber beschaffen und mit einer der Aktualisierungsmethoden für das Hinzufügen von Treibern verwenden. ZENworks 7 basiert auf SLES 9 SP2, Kernel-Version 2.6.5-7.191. Wenn der Treiber nicht für diese spezielle Version kompiliert worden ist, sollten Sie den Code beziehen und ihn für diese Version kompilieren. Weitere Informationen hierzu finden Sie in Abschnitt 65.5.2, Erstellen von Treibern.

65.5.2 Erstellen von Treibern

Nahezu alle Linux-Treiber werden als Quellcode ausgeliefert und müssen vor ihrer Verwendung kompiliert werden. Um das Treibermodul zu erstellen, folgen Sie den Anweisungen des Herstellers, die im Lieferumfang des neuen Treibers enthalten sind. Viele Treiber können so erstellt werden, dass sie in den Kernel integriert werden können. Es wird jedoch empfohlen, LAN-Treiber als externe Kernel-Module zu erstellen.

Beim Erstellen Ihrer LAN-Treiber sollten Sie sicherstellen, dass Ihr Build-Computer den gleichen Kernel wie die Imaging-Umgebung verwendet. Wenn Ihr LAN-Treiber in Ihrer Imaging-Umgebung nicht geladen werden kann, stimmen in der Regel Ihre Build-Umgebung und Ihre Imaging-Umgebung nicht überein.

Sie können die aktuelle Kernel-Version Ihrer Linux-Umgebung mit dem folgenden Befehl ermitteln:

uname -r

Sie müssen ggf. das Ergebnis aus dem Befehl uname ändern, damit die Kernel-Versionen übereinstimmen. Weitere Informationen hierzu finden Sie in Abschnitt 65.6, Befehl "Uname" verwenden.

Weitere Informationen zum Erstellen von Treibern erhalten Sie hier::

Linux-Quellcode-Baum erstellen

Um ein Modul zu kompilieren, benötigen Sie den Linux-Quellcodebaum, in dem die dem ZENworks-Kernel entsprechende Konfiguration enthalten ist. Den erforderlichen Quellcode finden Sie im Artikel TID 10091818 in der Novell Support-Knowledgebase.

So verwenden Sie den Linux-Quellcodebaum:

  1. Dekomprimieren Sie die Datei und installieren Sie den Quellcodebaum im Verzeichnis /usr/src.

    Die tar-Daei erstellt z. B. die folgenden Verzeichnisse:

    /usr/src/linux-2.6.5-7.191
    /usr/src/linux-2.6.5-7.191-obj
    
  2. Sie können die ordnungsgemäße Konfigurationsdatei von den folgenden Orten abrufen:

  3. Kopieren Sie diese Konfigurationsdatei in das in Schritt 1 erstellte Verzeichnis.

    Zum Beispiel: /usr/src/linux-2.6.5-7.191.

  4. So erstellen Sie einen Link zum Quellcodebaum:

    1. Geben Sie zum Ändern des Verzeichnisses in /usr/src Folgendes ein:

      cd /usr/src
      
    2. Wenn sich in dem Verzeichnis ein Linux-Softlink befindet, löschen Sie ihn.

    3. Erstellen Sie den Linux-Softlink, beispielsweise:

      ln -s linux-2.6.5-7.191 linux
      

Sie haben nun den Linux-Kernel-Ursprungsbaum und den Softlink für die Kompilierung des Moduls vorbereitet. Fahren Sie fort mit Modul kompilieren.

Modul kompilieren

Führen Sie folgende Schritte durch, um das Modul manuell zu kompilieren:

  1. Installieren Sie den Ursprung.

    Folgen Sie den Herstelleranweisungen, um den Ursprung zu installieren.

    In der Regel befindet sich der Modulursprung in einem Verzeichnis unter /usr/src. Modul-Ursprungsdateien werden in der Regel als eine mit gzip komprimierte Tar-Datei ausgeführt (.tar.gz or .tgz). Die Datei kann ebenfalls als eine mit bzip komprimierte Datei (.bz2) ausgeführt sein.

  2. Führen Sie Folgendes durch, um den Ursprung zu kompilieren:

    1. Ändern Sie die Verzeichnisse auf den Ursprung.

    2. Wenn Sie uname geändert haben, um zur korrekten Kernel-Version zu wechseln, erstellen Sie einen make-Befehl.

  3. Wenn Sie Ihr Modul für ZENworks kompiliert haben, wählen Sie die erzeugte .ko-Moduldatei aus (stellen Sie sicher, dass Sie den richtigen Modulnamen und nicht eine .ko Arbeitsdatei ausgewählt haben) und installieren Sie diese mit der Treiberaktualisierungsmethode oder stellen Sie sie in das initrd-Dateisystem.

65.5.3 Laden von Treibern mit Parametern

Wenn Sie ein Modul während der linuxrc-Verarbeitung laden möchten und wenn linuxrc nicht erkennt, dass das Modul geladen werden soll, oder Sie möchten die Lade-Parameter angeben, dann können Sie eine Zeile in der linuxrc.config- oder /info-Datei eingeben. Diese Datei muss dann im initrd-Dateisystem aktualisiert werden.

Es kann ggf. erforderlich sein, ein LAN-Treibermodul mit speziellen Parametern zu laden. Geben Sie hierfür z. B. folgende Zeile ein:

insmod="moduleName parm=xxx"

Diese Eingabe wird in der Regel vorgenommen, um einen LAN-Treiber mit spezifischen Parametern, wie Vollduplex oder eine spezifische Geschwindigkeit, zu laden.