Comment compiler et installer le pilote ixgbe sous Linux

王林
Libérer: 2023-05-18 10:46:41
avant
2279 Les gens l'ont consulté

Première étape : conditions préalables à l'installation

Avant l'installation, vous devez installer les fichiers d'en-tête du noyau et les kits d'outils de développement correspondants.

  $ sudo apt-get install linux-headers-$(uname -r)
  $ sudo apt-get install gcc make
Copier après la connexion

Étape 2 : Compiler le pilote ixgbe

Téléchargez le code source du dernier pilote ixgbe.

  $ wget http://sourceforge.net/projects/e1000/files/ixgbe%20stable/3.23.2/ixgbe-3.23.2.tar.gz
Copier après la connexion

Compilez le pilote ixgbe comme suit.

  $ tar xvfvz ixgbe-3.23.2.tar.gz
  $ cd ixgbe-3.23.2/src
  $ make
Copier après la connexion

Étape 3 : Vérifiez le pilote ixgbe

Après la compilation, vous verrez ixgbe.ko créé dans le répertoire ixgbe-3.23.2/src. Il s'agit du pilote ixgbe qui sera chargé dans le noyau.

Utilisez la commande modinfo pour vérifier les informations du module du noyau. Notez que vous devez spécifier le chemin absolu du fichier du module (tel que ./ixgbe.ko ou /home/xmodulo/ixgbe/ixgbe-3.23.2/src/ixgbe.ko). La sortie affichera la version du noyau ixgbe.

  $ modinfo ./ixgbe.ko
Copier après la connexion
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)
Copier après la connexion

Étape 4 : Testez le pilote ixgbe

Avant de tester le nouveau module, si l'ancienne version du module ixgbe existe déjà dans votre noyau, vous devez d'abord la supprimer.

  $ sudo rmmod ixgbe
Copier après la connexion

Utilisez ensuite la commande insmod pour insérer le module ixgbe nouvellement compilé. Assurez-vous de spécifier un chemin absolu vers le module.

  $ sudo insmod ./ixgbe.ko
Copier après la connexion

Si la commande ci-dessus s'exécute avec succès, aucune information ne sera affichée.

Vous pouvez essayer d'ajouter des paramètres supplémentaires si vous en avez besoin. Par exemple, définissez le nombre de files d'attente RSS sur 16 :

  $ sudo insmod ./ixgbe.ko rss=16
Copier après la connexion

Vérifiez /var/log/kern.log pour voir si le pilote ixgbe est activé avec succès. Vérifiez le journal pour "pilote réseau Intel(r) 10 Gigabit PCI Express". Les informations de version d'ixgbe doivent être les mêmes que celles de l'affichage modinfo précédent.

18 septembre 14:48:52 noyau Bob l'éponge : [684717.906254] pilote réseau intel(r) 10 gigabit pci express - version 3.22.3

Étape 5 : Installez le pilote ixgbe

Une fois que vous avez vérifié le nouveau pilote ixgbe peut être chargé avec succès, la dernière étape consiste à installer le pilote sur votre système.

  $ sudo make install
Copier après la connexion

ixgbe.ko sera installé sous /lib/modules//kernel/drivers/net/ethernet/intel/ixgbe.

À partir de cette étape, vous pouvez utiliser la commande modprobe suivante pour charger le pilote ixgbe. Notez que vous n'avez plus besoin de spécifier le chemin absolu.

  $ sudo modprobe ixgbe
Copier après la connexion

Si vous souhaitez charger le pilote ixgbe au démarrage, vous pouvez ajouter "ixgbe" à la fin de /etc/modules.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:yisu.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!