J'ai juste essayé de démarrer ma machine en mode UEFI, mais j'ai reçu ce message:
le système ne peut pas trouver le pilote UEFI pour les périphériques réseau supplémentaires [0x10D38086]
J'utilise Debian Linux, mais je ne sais pas si cela est pertinent. Je ne sais pas si mon système a même atteint la partie Linux.
Voici la sortie pertinente de lspci
ma carte réseau
Contrôleur Ethernet 0a: 00.0: connexion réseau Intel Corporation 82574L Gigabit
La carte mère elle-même prend en charge l'UEFI, je pense. Voici la sortie de dmidecode
la carte mère.
dmidecode --type 2
# dmidecode 2.12
SMBIOS 2.7 present.
Handle 0x0002, DMI type 2, 15 bytes
Base Board Information
Manufacturer: ASUSTeK COMPUTER INC.
Product Name: SABERTOOTH 990FX R2.0
Version: Rev 1.xx
Serial Number: 130309723501985
Asset Tag: To be filled by O.E.M.
Features:
Board is a hosting board
Board is replaceable
Location In Chassis: To be filled by O.E.M.
Chassis Handle: 0x0003
Type: Motherboard
Contained Object Handles: 0
boot
uefi
network-adapter
Faheem Mitha
la source
la source
Réponses:
Le problème ici est que le micrologiciel ou la ROM optionnelle de votre carte réseau ne prend pas en charge UEFI.
Une carte d'extension peut avoir son propre code exécutable à utiliser dans l'environnement de pré-démarrage. Le VBIOS sur une carte graphique, utilisé pour initialiser le GPU et afficher au démarrage, est un exemple d'une telle ROM optionnelle. Sur une carte réseau, cela est généralement utilisé pour implémenter PXE . UEFI 1 nécessite généralement que le micrologiciel de la carte contienne un pilote spécialement conçu, mais votre carte réseau a été conçue pour les systèmes BIOS hérités, de sorte qu'elle ne contient aucun pilote de ce type. En tant que tel, il ne fonctionnera pas sur un système UEFI qui n'utilise pas le module de support de compatibilité (la couche de compatibilité BIOS héritée) et doit être mis à jour.
En creusant plus profondément, j'ai trouvé que le code fourni dans le message d'erreur
0x10D38086
est l'identifiant PCI de la carte réseau. 8086: 10D3 est l' adaptateur de bureau Intel Gigabit CT .Une recherche des téléchargements disponibles pour cette carte a révélé une mise à jour du micrologiciel qui peut être installée sur la carte réseau pour mettre à jour la ROM optionnelle afin qu'elle prenne en charge UEFI. Téléchargez et extrayez
Preboot.tar.gz
et suivez les instructions pour mettre à jour le firmware. Selon les notes de publication , l'option ROM comprend des pilotes UEFI, qui devraient corriger l'erreur que vous obtenez.Dans votre cas, flashez le
combo
firmware, qui prend en charge UEFI et PXE:Le message renvoyé par l'utilitaire indique simplement les fonctionnalités fournies par le micrologiciel existant. Il sera écrasé pendant le processus flash; c'est normal.
Après avoir flashé le firmware, redémarrez le système en mode natif UEFI et voyez si cela fonctionne. Sinon, vous devrez remplacer la carte réseau.
Mise à jour: Vous avez indiqué sur le chat que vous obtenez cette erreur en essayant de flasher le firmware:
Il semble que le programme flash du micrologiciel nécessite le pilote de débogage iQV (
iqvlinux
) pour fonctionner. Le pilote peut être téléchargé ici , mais vous devrez compiler et charger le pilote vous-même. Leinstall
script, qui est un téléchargement distinct, est nécessaire pour effectuer l'installation; ne vous contentez pas d'extraire le package de pilotes et de l'exécutermake
.1 Les pilotes EFI peuvent également se trouver dans la partition système EFI ou dans le micrologiciel UEFI sur la carte mère elle-même. Cependant, pour les cartes PCI et PCIe, il est généralement fourni sur le micrologiciel de la carte.
la source
bootutil64e -up=efi64 -all -FILE=/usr/local/src/Intel_Network_Card_Boot_Utility/APPS/BootUtil/BootIMG.FLB
. Le message dit: "La mise à jour d'EFI supprime la fonctionnalité PXE. Voulez-vous continuer?" Je ne sais pas exactement ce que cela signifie.-up=combo
. Sinon, votre carte ne prend en charge qu'une seule de ces fonctions à la fois, pas les deux, et vous devrez perdre la fonction de démarrage PXE pour que la carte démarre dans un environnement UEFI.Merci à @bwDraco pour la réponse utile.
J'ajoute ici quelques détails sur ce à quoi ressemble ce processus dans la pratique.
Tout d'abord, j'ai téléchargé et déballé
Preboot.tar.gz
. Attention - cela ne décompresse pas dans son propre répertoire, donc créez d'abord un répertoire pour lui.Notez que cet utilitaire prend en charge un certain nombre de systèmes d'exploitation différents. Cependant, je ne décrirai que comment cela fonctionne sous Linux, car je n'exécute rien d'autre. La documentation principale de cet utilitaire est
DOCS/Adapter_User_Guide.pdf
.La version Linux de cet utilitaire est constituée de deux exécutables binaires,
APPS/BootUtil/Linux_x64/bootutil64e
(64 bits) etAPPS/BootUtil/Linux32$ ls bootutil32
(32 bits). Et la documentation de bootutil estAPPS/BootUtil/Docs/bootutil.txt
.J'ai ensuite copié le fichier
APPS/BootUtil/Linux_x64/bootutil64e
dans/usr/local/bin
, bien que je devais d'abord le rendre exécutable. Quand je l'ai couru, j'aiCela a ensuite nécessité un téléchargement
iqvlinux.tar.gz
, qui est une archive des sources du module du noyau Linux, depuis https://sourceforge.net/projects/e1000/files/iqvlinux/1.2.0.3/ .Remarque: il y a un tr / min, mais essayer de le convertir en deb semble assez désespéré. Et il ne semble même pas contenir un binaire, juste des fichiers source et des en-têtes. Ce n'est pas évident, mais il faut aussi le
install
script dans ce même répertoire. Exécutez ensuiteou similaire en tant qu'utilisateur (l'exécution d'un script étrange en tant que root n'est jamais une bonne idée), en veillant à ce qu'il
iqvlinux.tar.gz
soit au même niveau que leinstall
script.Cela donne la sortie
La copie manuelle du module du noyau fait disparaître l'erreur.
Avant de reflasher la carte, voici la sortie de
bootutil64e
la carte:Voici la transcription de la session du reflashing. L'option combinée active les fonctionnalités PXE et UEFI. Notez que l'on doit pointer vers l'emplacement de l'image de démarrage avec l'
FILE
option:la source