Ich habe gerade versucht, meinen Computer im UEFI-Modus zu starten, habe aber folgende Meldung erhalten:
Das System kann den UEFI-Treiber für die zusätzlichen Netzwerkgeräte nicht finden. [0x10D38086]
Ich verwende Debian Linux, bin mir aber nicht sicher, ob dies relevant ist. Ich bin mir nicht sicher, ob mein System überhaupt zum Linux-Teil gelangt ist.
Hier ist die relevante Ausgabe lspci
für meine Netzwerkkarte
0a: 00.0 Ethernet-Controller: Intel Corporation 82574L Gigabit-Netzwerkverbindung
Das Motherboard selbst unterstützt UEFI, denke ich. Hier ist die Ausgabe dmidecode
für das Motherboard.
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
quelle
quelle
Antworten:
Das Problem hierbei ist, dass die Firmware oder das Options-ROM Ihres Netzwerkadapters UEFI nicht unterstützt.
Eine Zusatzkarte kann über einen eigenen ausführbaren Code zur Verwendung in der Preboot-Umgebung verfügen. Das VBIOS auf einer Grafikkarte, mit dem die GPU initialisiert und beim Start angezeigt wird, ist ein Beispiel für ein solches Options-ROM. Auf einer Netzwerkkarte wird dies normalerweise zum Implementieren von PXE verwendet . UEFI 1 erfordert normalerweise , dass die Firmware der Karte einen speziell erstellten Treiber enthält. Ihre Netzwerkkarte wurde jedoch für ältere BIOS-Systeme erstellt, sodass sie keinen solchen Treiber enthält. Daher funktioniert es nicht auf einem UEFI-System, das das Kompatibilitätsunterstützungsmodul (die ältere BIOS-Kompatibilitätsschicht) nicht verwendet und aktualisiert werden muss.
Bei näherer Betrachtung stellte ich fest, dass der in der Fehlermeldung angegebene Code
0x10D38086
die PCI-ID der Netzwerkkarte ist. 8086: 10D3 ist der Intel Gigabit CT Desktop Adapter .Eine Suche nach den für diese Karte verfügbaren Downloads ergab ein Firmware-Update , das auf der Netzwerkkarte installiert werden kann, um das Options-ROM so zu aktualisieren, dass es UEFI unterstützt. Laden Sie
Preboot.tar.gz
die Firmware herunter, extrahieren Sie sie und befolgen Sie die Anweisungen zum Aktualisieren der Firmware. Gemäß den Release Notes , enthält die Option ROM UEFI - Treiber, die den Fehler beheben sollten Sie bekommen.Flashen Sie in Ihrem Fall die
combo
Firmware, die UEFI- und PXE-Unterstützung bietet:Die vom Dienstprogramm zurückgegebene Meldung gibt lediglich an, welche Funktionen die vorhandene Firmware bietet. Es wird während des Flash-Vorgangs überschrieben. das ist normal.
Nachdem Sie die Firmware geflasht haben, starten Sie das System im nativen UEFI-Modus neu und prüfen Sie, ob es funktioniert. Wenn nicht, müssen Sie den Netzwerkadapter ersetzen.
Update: Sie haben im Chat angegeben , dass dieser Fehler beim Flashen der Firmware auftritt:
Es sieht so aus, als ob das Firmware-Flash-Programm den iQV-Debug-Treiber (
iqvlinux
) benötigt, um zu funktionieren. Der Treiber kann hier heruntergeladen werden , Sie müssen den Treiber jedoch selbst kompilieren und laden. Dasinstall
Skript, bei dem es sich um einen separaten Download handelt, ist für die Installation erforderlich. Extrahieren Sie nicht einfach das Treiberpaket und führen Sie es ausmake
.1 EFI-Treiber können sich auch in der EFI-Systempartition oder in der UEFI-Firmware auf dem Motherboard selbst befinden. Bei PCI- und PCIe-Karten wird dies jedoch normalerweise in der Firmware der Karte angegeben.
quelle
bootutil64e -up=efi64 -all -FILE=/usr/local/src/Intel_Network_Card_Boot_Utility/APPS/BootUtil/BootIMG.FLB
. Die Meldung lautet: "Durch das Aktualisieren von EFI wird die PXE-Funktionalität entfernt. Möchten Sie fortfahren?" Ich weiß nicht genau, was das bedeutet.-up=combo
. Andernfalls unterstützt Ihre Karte anscheinend nur eine dieser Funktionen gleichzeitig, nicht beide, und Sie müssen die PXE-Startfunktion verlieren, damit die Karte in einer UEFI-Umgebung gestartet werden kann.Vielen Dank an @bwDraco für die hilfreiche Antwort.
Ich füge hier einige Details hinzu, wie dieser Prozess in der Praxis aussieht.
Zuerst habe ich heruntergeladen und entpackt
Preboot.tar.gz
. Warnung - Dies wird nicht in ein eigenes Verzeichnis entpackt. Erstellen Sie daher zuerst ein Verzeichnis dafür.Beachten Sie, dass dieses Dienstprogramm eine Reihe verschiedener Betriebssysteme unterstützt. Ich werde jedoch nur beschreiben, wie es unter Linux funktioniert, da ich nichts anderes ausführe. Die Hauptdokumentation für dieses Dienstprogramm ist
DOCS/Adapter_User_Guide.pdf
.Die Linux-Version dieses Dienstprogramms besteht aus zwei ausführbaren Binärdateien
APPS/BootUtil/Linux_x64/bootutil64e
(64 Bit) undAPPS/BootUtil/Linux32$ ls bootutil32
(32 Bit). Und die Dokumentation für bootutil istAPPS/BootUtil/Docs/bootutil.txt
.Ich kopiert dann die Datei
APPS/BootUtil/Linux_x64/bootutil64e
an/usr/local/bin
, obwohl ich es zuerst ausführbar machen musste. Als ich es lief, bekam ichDies erforderte dann das Herunterladen
iqvlinux.tar.gz
eines Quellarchivs für Linux-Kernelmodule von https://sourceforge.net/projects/e1000/files/iqvlinux/1.2.0.3/ .Hinweis: Es gibt dort eine Drehzahl, aber der Versuch, sie in eine Deb umzuwandeln, sieht ziemlich hoffnungslos aus. Und es scheint nicht einmal eine Binärdatei zu enthalten, sondern nur Quelldateien und Header. Dies ist nicht offensichtlich, aber man braucht auch das
install
Skript in demselben Verzeichnis. Dann renneoder ähnlich wie ein Benutzer (das Ausführen eines seltsamen Skripts als Root ist niemals eine gute Idee), um sicherzustellen, dass
iqvlinux.tar.gz
es sich auf derselben Ebene wie dasinstall
Skript befindet.Dies gibt die Ausgabe
Durch manuelles Kopieren des Kernelmoduls wird der Fehler behoben.
Vor dem erneuten Flashen der Karte ist dies die Ausgabe
bootutil64e
für die Karte:Hier ist das Sitzungsprotokoll des erneuten Blinkens. Die Kombinationsoption aktiviert sowohl die PXE- als auch die UEFI-Funktionalität. Beachten Sie, dass man mit der
FILE
Option auf den Speicherort des Boot-Images zeigen muss :quelle