So kompilieren und installieren Sie den ixgbe-Treiber unter Debian Linux

王林
Freigeben: 2023-05-20 18:53:11
nach vorne
1544 Leute haben es durchsucht

Intels 10g-Netzwerkkarten (z. B. 82598, 82599, x540) werden vom ixgbe-Treiber unterstützt. Moderne Linux-Distributionen bringen bereits den ixgbe-Treiber mit, der über ladbare Module genutzt wird. Es gibt jedoch Situationen, in denen Sie den ixgbe-Treiber selbst kompilieren und auf Ihrem Computer installieren möchten, beispielsweise wenn Sie die neuesten Funktionen des ixbge-Treibers erleben möchten. Ebenso besteht ein Problem mit dem ixgbe-Treiber, der standardmäßig mit dem Kernel geliefert wird, darin, dass Sie die Treiberparameter nicht anpassen können. Wenn Sie einen vollständig angepassten ixgbe-Treiber wünschen (z. B. RSS, mehrere Warteschlangen, Interrupt-Schwellenwerte usw.), müssen Sie den ixgbe-Treiber manuell aus der Quelle kompilieren.

Schritt eins: Installationsvoraussetzungen

Vor der Installation müssen Sie passende Kernel-Header-Dateien und Entwicklungs-Toolkits installieren.

  $ sudo apt-get install linux-headers-$(uname -r)
  $ sudo apt-get install gcc make
Nach dem Login kopieren

Schritt 2: Kompilieren Sie den ixgbe-Treiber

Laden Sie den Quellcode des neuesten ixgbe-Treibers herunter.

  $ wget http://sourceforge.net/projects/e1000/files/ixgbe%20stable/3.23.2/ixgbe-3.23.2.tar.gz
Nach dem Login kopieren

Kompilieren Sie den ixgbe-Treiber wie folgt.

  $ tar xvfvz ixgbe-3.23.2.tar.gz
  $ cd ixgbe-3.23.2/src
  $ make
Nach dem Login kopieren

Schritt 3: Überprüfen Sie den ixgbe-Treiber

Nach der Kompilierung sehen Sie, dass ixgbe.ko im Verzeichnis ixgbe-3.23.2/src erstellt wurde. Dies ist der ixgbe-Treiber, der in den Kernel geladen wird.

Verwenden Sie den Befehl modinfo, um die Kernelmodulinformationen zu überprüfen. Beachten Sie, dass Sie den absoluten Pfad zur Moduldatei angeben müssen (z. B. ./ixgbe.ko oder /home/xmodulo/ixgbe/ixgbe-3.23.2/src/ixgbe.ko). Die Ausgabe zeigt die Version des ixgbe-Kernels.

  $ modinfo ./ixgbe.ko
Nach dem Login kopieren
filename: /home/xmodulo/ixgbe/ixgbe-3.23.2/src/ixgbe.ko
  version: 3.23.2
  license: gpl
  description: intel(r) 10 gigabit pci express network driver
  author: intel corporation,
  srcversion: 2ada5e537923e983fa9dae2
  alias: pci:v00008086d00001560sv*sd*bc*sc*i*
  alias: pci:v00008086d00001558sv*sd*bc*sc*i*
  alias: pci:v00008086d0000154asv*sd*bc*sc*i*
  alias: pci:v00008086d00001557sv*sd*bc*sc*i*
  alias: pci:v00008086d0000154fsv*sd*bc*sc*i*
  alias: pci:v00008086d0000154dsv*sd*bc*sc*i*
  alias: pci:v00008086d00001528sv*sd*bc*sc*i*
  alias: pci:v00008086d000010f8sv*sd*bc*sc*i*
  alias: pci:v00008086d0000151csv*sd*bc*sc*i*
  alias: pci:v00008086d00001529sv*sd*bc*sc*i*
  alias: pci:v00008086d0000152asv*sd*bc*sc*i*
  alias: pci:v00008086d000010f9sv*sd*bc*sc*i*
  alias: pci:v00008086d00001514sv*sd*bc*sc*i*
  alias: pci:v00008086d00001507sv*sd*bc*sc*i*
  alias: pci:v00008086d000010fbsv*sd*bc*sc*i*
  alias: pci:v00008086d00001517sv*sd*bc*sc*i*
  alias: pci:v00008086d000010fcsv*sd*bc*sc*i*
  alias: pci:v00008086d000010f7sv*sd*bc*sc*i*
  alias: pci:v00008086d00001508sv*sd*bc*sc*i*
  alias: pci:v00008086d000010dbsv*sd*bc*sc*i*
  alias: pci:v00008086d000010f4sv*sd*bc*sc*i*
  alias: pci:v00008086d000010e1sv*sd*bc*sc*i*
  alias: pci:v00008086d000010f1sv*sd*bc*sc*i*
  alias: pci:v00008086d000010ecsv*sd*bc*sc*i*
  alias: pci:v00008086d000010ddsv*sd*bc*sc*i*
  alias: pci:v00008086d0000150bsv*sd*bc*sc*i*
  alias: pci:v00008086d000010c8sv*sd*bc*sc*i*
  alias: pci:v00008086d000010c7sv*sd*bc*sc*i*
  alias: pci:v00008086d000010c6sv*sd*bc*sc*i*
  alias: pci:v00008086d000010b6sv*sd*bc*sc*i*
  depends: ptp,dca
  vermagic: 3.11.0-19-generic smp mod_unload modversions
  parm: interrupttype:change interrupt mode (0=legacy, 1=msi, 2=msi-x), default intmode (deprecated) (array of int)
  parm: intmode:change interrupt mode (0=legacy, 1=msi, 2=msi-x), default 2 (array of int)
  parm: mq:disable or enable multiple queues, default 1 (array of int)
  parm: dca:disable or enable direct cache access, 0=disabled, 1=descriptor only, 2=descriptor and data (array of int)
  parm: rss:number of receive-side scaling descriptor queues, default 0=number of cpus (array of int)
  parm: vmdq:number of virtual machine device queues: 0/1 = disable, 2-16 enable (default=8) (array of int)
  parm: max_vfs:number of virtual functions: 0 = disable (default), 1-63 = enable this many vfs (array of int)
  parm: vepa:vepa bridge mode: 0 = veb (default), 1 = vepa (array of int)
  parm: interruptthrottlerate:maximum interrupts per second, per vector, (0,1,956-488281), default 1 (array of int)
  parm: lliport:low latency interrupt tcp port (0-65535) (array of int)
  parm: llipush:low latency interrupt on tcp push flag (0,1) (array of int)
  parm: llisize:low latency interrupt on packet size (0-1500) (array of int)
  parm: llietype:low latency interrupt ethernet protocol type (array of int)
  parm: llivlanp:low latency interrupt on vlan priority threshold (array of int)
  parm: fdirpballoc:flow director packet buffer allocation level:
  1 = 8k hash filters or 2k perfect filters
  2 = 16k hash filters or 4k perfect filters
  3 = 32k hash filters or 8k perfect filters (array of int)
  parm: atrsamplerate:software atr tx packet sample rate (array of int)
  parm: fcoe:disable or enable fcoe offload, default 1 (array of int)
  parm: lro:large receive offload (0,1), default 1 = on (array of int)
  parm: allow_unsupported_sfp:allow unsupported and untested sfp+ modules on 82599 based adapters, default 0 = disable (array of int)
Nach dem Login kopieren

Schritt 4: Testen Sie den ixgbe-Treiber

Bevor Sie das neue Modul testen, müssen Sie es zuerst entfernen, wenn die alte Version des ixgbe-Moduls bereits in Ihrem Kernel vorhanden ist.

  $ sudo rmmod ixgbe
Nach dem Login kopieren

Dann verwenden Sie den Befehl insmod, um das neu kompilierte ixgbe-Modul einzufügen. Stellen Sie sicher, dass Sie einen absoluten Pfad zum Modul angeben.

  $ sudo insmod ./ixgbe.ko
Nach dem Login kopieren

Wenn der obige Befehl erfolgreich ausgeführt wird, werden keine Informationen angezeigt.

Sie können versuchen, bei Bedarf zusätzliche Parameter hinzuzufügen. Stellen Sie beispielsweise die Anzahl der RSS-Warteschlangen auf 16 ein:

  $ sudo insmod ./ixgbe.ko rss=16
Nach dem Login kopieren

Überprüfen Sie /var/log/kern.log, um zu sehen, ob der ixgbe-Treiber erfolgreich aktiviert wurde. Überprüfen Sie das Protokoll auf „Intel(r) 10 Gigabit PCI Express Netzwerktreiber“. Die Versionsinformationen von ixgbe sollten mit der vorherigen Modinfo-Anzeige übereinstimmen.

18. September 14:48:52 Spongebob-Kernel: [684717.906254] Intel(r) 10-Gigabit-PCI-Express-Netzwerktreiber – Version 3.22.3

Schritt 5: Ixgbe-Treiber installieren

Sobald Sie den neuen ixgbe-Treiber überprüft haben erfolgreich geladen werden kann, besteht der letzte Schritt darin, den Treiber in Ihrem System zu installieren.

  $ sudo make install
Nach dem Login kopieren

ixgbe.ko wird unter /lib/modules//kernel/drivers/net/ethernet/intel/ixgbe installiert.

Von diesem Schritt aus können Sie den folgenden Modprobe-Befehl verwenden, um den ixgbe-Treiber zu laden. Beachten Sie, dass Sie nicht mehr den absoluten Pfad angeben müssen.

  $ sudo modprobe ixgbe
Nach dem Login kopieren

Wenn Sie den ixgbe-Treiber beim Start laden möchten, können Sie „ixgbe“ am Ende von /etc/modules hinzufügen.

Das obige ist der detaillierte Inhalt vonSo kompilieren und installieren Sie den ixgbe-Treiber unter Debian Linux. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:yisu.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage