Eine Zeitlang haben Fedora-Freigaben UEFI ( häufiger bekannt als EFI) Laden des Betriebssystems auf Plattformen X86-64 gestützt. Etwas Erfahrung der Anwendung von EFI auf Plattformen IA64 in den Jahren habend, entschied mich ich, EFI Laden des Betriebssystems Fedora 12 heraus zu prüfen auf einem meiner Systeme, das Intel DX48BT2 ist (Bonetrail 2) Plattform, die mit eingebauter Unterstützung für EFI Laden des Betriebssystems kommt.
Was bedeute ich durch EFI, das ein Betriebssystem wie Fedora 12 auflädt? Eine Plattform, die EFI Laden des Betriebssystems stützt, baut nicht auf einen Kernanlauf, der in der Aufladungsaufzeichnung einer Festplatte gespeichert wird. Ein Aufladungsmanager in den Plattformmikroprogrammaufstellung kann eine Fachtabelle der Scheibe lesen und versteht den Plan eines FAT-Dateisystems, das in einem gekennzeichneten Fach ist. Die Sonderkommandos des Aufladungsmanagers sind die definierte Implementierung, aber der Aufladungsmanager wird angefordert, unter Verwendung der weithin bekannten EFI globalen Variablen konfigurierbar zu sein. Z.B. wird der Aufladungsmanager angefordert, die BootOrder globale Variable auf eine Liste der Aufladungswahlen überzuprüfen. Eine Aufladungswahl ist eine oder mehrere EFI globalen Variablen der Form. wo eine Zahl mit 4 Stellen ist, die mit 0000 beginnt, enthalten das den Vorrichtungs- und Pfadnamen einer Aufladungsladevorrichtung, um zu laden und zu laufen und einen Satz Wahlen, zum zu dieser Aufladungsladevorrichtung vielleicht zu überschreiten. Wenn es keine BootOrder globale Variable gibt, wird der Aufladungsmanager angefordert, auf einer Rückstellungsaufladungsladevorrichtung in einigen spezifizierten Rückstellungspositionen zu überprüfen. Der tatsächliche Name der Rückstellungsaufladungsladevorrichtung ist Architekturabhängiges, z.B. für x86-64 es ist \ EFI \ AUFLADUNG \ BOOTX64.EFI.
Um EFI Laden des Betriebssystems auf dem DX48BT2 zu ermöglichen müssen Sie einige BIOS-Einstellungen ändern. Der Primär-SATA Steuerpult muss zusammengebaut werden, IDE-Modus zu verwenden, d.h. muss der AHCI (vorgerückte Wirts-Steuerpult-Schnittstelle) Modus untauglich sein. Anscheinend im AHCI Modus ist die SATA Steuerpultmikroprogrammaufstellung ein Teil des CSM (Kompatibilitäts-Stützmodul) und stützt nicht einen EFI Fahrer. Sogar auf Intel verschalt spätester Bediener wie das S5500BC, Sie müssen IDE-Modus noch verwenden, wenn Sie EFI Laden des Betriebssystems wünschen! Wenn Sie den zweiten SATA Steuerpult benutzen, der die Matrix-Software RAID steuert, müssen Sie sie auch sperren, da Schalter RAID nicht in EFI Aufladungsmodus gestützt wird. Schließlich müssen Sie der UEFI Wahl im Aufladungswahlmenü ermöglichen. Ich empfehle auch, dass Sie die vorgerückte Aufladungswahl vorwählen, obgleich es nicht vorgeschrieben ist.
Ich bin mit EFI ein wenig vertraut, das ein Windows Vista SP2 x86-64 DVD auflädt und war, zu finden überrascht, dass ich zur EFI Aufladung ein Fedora 12 x86-64 DVD nicht imstande war, weil, während es eine /EFI/BOOT/BOOTX64.CONF-Akte enthält, sie nicht ein entsprechendes EFI Urladeprogramm, d.h. /EFI/BOOT/BOOTX64.EFI enthält. Mehr über diese zwei Akten später.
Zunächst wendete mich ich an den Unterschied herausfinden zwischen efidisk.img und efiboot.img, wie, was diese Bilder wirklich enthalten und wo sie/sind, verwendet werden sollten, damit, ist scheint undokumentiert (oder mindestens ich könnte die Unterlagen nicht leicht finden.) Ich brannte die Bilder auf zwei unterschiedliches DVDs und brachte sie an, um einen Blick am Inhalt zu haben. Ich könnte als leicht die Bilder unter Verwendung eines Befehls wie das folgende gerade angebracht haben und in die Einfassungseinfassung cd'ed, um den Inhalt zu betrachten.
mount -o loop -efiboot.img /mnt
Ist hier eine Auflistung des efiboot Bildes.
efi: total 20 drwxr-xr-x. 3 root root 2048 2009-11-08 19:06 . drwxr-xr-x. 3 root root 16384 1969-12-31 19:00 .. drwxr-xr-x. 2 root root 2048 2009-11-08 19:06 boot efi/boot: total 246 drwxr-xr-x. 2 root root 2048 2009-11-08 19:06 . drwxr-xr-x. 3 root root 2048 2009-11-08 19:06 .. -rwxr-xr-x. 1 root root 168 2009-11-08 19:06 BOOTX64.conf -rwxr-xr-x. 1 root root 225633 2009-11-08 19:06 bootx64.efi -rwxr-xr-x. 1 root root 17488 2009-11-08 19:06 splash.xpm.gz
Die Akte bootx64.efi ist wirklich MADE v0.97 und BOOTX64.conf ist Konfigurationsakte der MADE. Es enthält eine einzelne MADE-Stanze, d.h.
#debug --graphics default=0 splashimage=/EFI/BOOT/splash.xpm.gz timeout 5 hiddenmenu title Fedora 12 kernel /images/pxeboot/vmlinuz initrd /images/pxeboot/initrd.img
Seit keinem Kern oder initrd sind Bilder im efiboot.img eingeschlossen, das ich ungewiß bin von, was Sie durch EFI erzielen können, das einen USB-Antrieb oder ein DVD enthalten dieses Bild auflädt.
Ich sollte Glück mit efidisk.img. Ist hier eine Auflistung seines Inhalts:
EFI/BOOT: total 23 drwxr-xr-x. 2 fpm fpm 2048 2009-11-08 19:06 . dr-xr-xr-x. 3 fpm fpm 2048 2009-11-08 19:07 .. -r--r--r--. 1 fpm fpm 168 2009-11-08 19:06 BOOTX64.conf -rw-r--r--. 1 fpm fpm 17488 2009-10-01 12:08 splash.xpm.gz -r--r--r--. 1 fpm fpm 449 2009-11-08 19:07 TRANS.TBL images: total 146866 drwxr-sr-x. 3 fpm fpm 2048 2009-11-08 19:07 . dr-xr-xr-x. 5 fpm fpm 2048 2009-11-08 19:07 .. -rw-r--r--. 1 fpm fpm 397312 2009-11-08 19:06 efiboot.img -rw-r--r--. 1 fpm fpm 27441152 2009-11-08 19:06 efidisk.img -rw-r--r--. 1 fpm fpm 122544128 2009-11-08 19:07 install.img drwxr-sr-x. 2 fpm fpm 2048 2009-11-08 19:06 pxeboot -rw-r--r--. 1 fpm fpm 400 2009-11-08 19:04 README -r--r--r--. 1 fpm fpm 1106 2009-11-08 19:07 TRANS.TBL images/pxeboot: total 26339 drwxr-sr-x. 2 fpm fpm 2048 2009-11-08 19:06 . drwxr-sr-x. 3 fpm fpm 2048 2009-11-08 19:07 .. -rw-r--r--. 2 fpm fpm 23540852 2009-11-08 19:06 initrd.img -rw-r--r--. 1 fpm fpm 265 2009-11-08 19:06 README -r--r--r--. 1 fpm fpm 659 2009-11-08 19:07 TRANS.TBL -rwxr-xr-x. 2 fpm fpm 3423296 2009-11-08 19:06 vmlinuz isolinux: total 27041 drwxr-sr-x. 2 fpm fpm 2048 2009-11-08 19:06 . dr-xr-xr-x. 5 fpm fpm 2048 2009-11-08 19:07 .. -r--r--r--. 1 fpm fpm 2048 2009-11-08 19:07 boot.cat -rw-r--r--. 1 fpm fpm 84 2009-11-08 19:06 boot.msg -r--r--r--. 1 fpm fpm 142 2009-11-08 19:06 grub.conf -rw-r--r--. 2 fpm fpm 23540852 2009-11-08 19:06 initrd.img -r--r--r--. 1 fpm fpm 14336 2009-11-08 19:06 isolinux.bin -r--r--r--. 1 fpm fpm 1010 2009-11-08 19:06 isolinux.cfg -r--r--r--. 1 fpm fpm 160280 2009-11-08 19:06 memtest -r--r--r--. 1 fpm fpm 390373 2009-11-08 19:06 splash.jpg -r--r--r--. 1 fpm fpm 2215 2009-11-08 19:07 TRANS.TBL -r--r--r--. 1 fpm fpm 147728 2009-11-08 19:06 vesamenu.c32 -rwxr-xr-x. 2 fpm fpm 3423296 2009-11-08 19:06 vmlinuz
Der Inhalt von /EFI/BOOT/BOOTX64.conf ist der selbe wie in efiboot.img, aber dieses mal existierten die initrd und Kernbilder wirklich im spezifizierten Verzeichnis im Bild. Gleichwohl es kein Zeichen des tatsächlichen EFI Urladeprogramms, d.h. BOOTX64.EFI gibt. O.K., dachte ich, muss etwas dort sein, den ich nicht über wie zur EFI Aufladung Fedora 12 verstehe.
Nach der Konfiguration des BIOS, um EFI Laden des Betriebssystems zu ermöglichen neu, wie oben besprochen, startete ich das DX48BT2 mit der UEFI Version (efidisk.iso) von Fedora 12 im DVD Antrieb. Leider berichtete das System, dass keine startbaren Vorrichtungen gefunden wurden. Fedora 12 nicht sogar versuchte und brachte an, wie mit einem Vermächtnisaufladungsmodus anbringen aufgetreten sein würde. Um zu sehen was geschah, benutzte ich DUO auf einem USB-Schlüssel um in ein EFI Shell aufzuladen und überprüfte den DVD Dateisystemplan. Er war, wie ich erwartete, behebt pro die EFI und UEFI Spezifikationen, aber es gab keine BOOTX64.EFI auf dem DVD.
Ich kontrollierte auch ein Dump des BIOS auf dem DX48BT2, um zu sehen, wenn es irgendwelche Textfolgen im BIOS gab, die geben konnte mir einen Anhaltspunkt hinsichtlich, was das Problem sein konnte. Es gab keine relevanten Textfolgen. Jedoch bestätigte ich, dass das BIOS oder mindestens die Teile, die ich kontrollierte, werde EFI-gegründet, wie Sie das Betrachten dieses Dumps der ersten Bytes von der Zweiheit sehen können. Die ersten 16 Bytes sind die EFI Kapsel GUID, d.h. 3B6686BD-0D76-4030-B70E-B5519E2FC5A0. Die Zeichenfolgen sind entweder UTF-16 oder UCS-2, d.h. 16 Bitbuchstabenkodierungsentwürfe, die in der Unicode Spezifikation definiert werden.
0000000: bd86 663b 760d 3040 b70e b551 9e2f c5a0 ..f;v.0@...Q./.. 0000010: 5000 0000 0000 0000 14a0 2600 0000 0000 P.........&..... 0000020: 0000 0000 0000 0000 0000 0000 0000 0000 ................ 0000030: 0000 0000 1402 0000 5000 0000 6600 0000 ........P...f... 0000040: ca00 0000 1601 0000 8201 0000 0000 0000 ................ 0000050: 2832 0863 2981 1244 1215 9514 5034 4036 (2.c)..D....P4@6 0000060: 1600 0000 0102 6500 6e00 6700 2000 4900 ......e.n.g. .I. 0000070: 6e00 7400 6500 6c00 2000 4400 6500 7300 n.t.e.l. .D.e.s. 0000080: 6b00 7400 6f00 7000 2000 4200 6f00 6100 k.t.o.p. .B.o.a. 0000090: 7200 6400 2000 4500 4600 4900 2000 4600 r.d. .E.F.I. .F. 00000a0: 6900 7200 6d00 7700 6100 7200 6500 2000 i.r.m.w.a.r.e. . 00000b0: 4500 6e00 6700 6900 6e00 6500 6500 7200 E.n.g.i.n.e.e.r. 00000c0: 6900 6e00 6700 0000 0000 6500 6e00 6700 i.n.g.....e.n.g. 00000d0: 2000 4200 5400 5800 3300 3800 3100 3000 .B.T.X.3.8.1.0. 00000e0: 4a00 2e00 3800 3600 4100 2e00 3200 3000 J...8.6.A...2.0. 00000f0: 3000 3600 2e00 3200 3000 3000 3900 2e00 0.6...2.0.0.9... 0000100: 3100 3000 3200 3300 2e00 3100 3000 3500 1.0.2.3...1.0.5. 0000110: 3700 0000 0000 6500 6e00 6700 2000 4600 7.....e.n.g. .F. 0000120: 6900 7200 6d00 7700 6100 7200 6500 2000 i.r.m.w.a.r.e. . 0000130: 7500 7000 6400 6100 7400 6500 2000 4200 u.p.d.a.t.e. .B. 0000140: 5400 5800 3300 3800 3100 3000 4a00 2e00 T.X.3.8.1.0.J... 0000150: 3800 3600 4100 2e00 3200 3000 3000 3600 8.6.A...2.0.0.6. 0000160: 2e00 3200 3000 3000 3900 2e00 3100 3000 ..2.0.0.9...1.0. 0000170: 3200 3300 2e00 3100 3000 3500 3700 0000 2.3...1.0.5.7... 0000180: 0000 6500 6e00 6700 2000 4500 4600 4900 ..e.n.g. .E.F.I. 0000190: 2000 6300 6100 7000 7300 7500 6c00 6500 .c.a.p.s.u.l.e. 00001a0: 2000 6300 6f00 6e00 7400 6100 6900 6e00 .c.o.n.t.a.i.n. 00001b0: 6900 6e00 6700 2000 6d00 6f00 7400 6800 i.n.g. .m.o.t.h. 00001c0: 6500 7200 6200 6f00 6100 7200 6400 2000 e.r.b.o.a.r.d. . 00001d0: 6600 6900 7200 6d00 7700 6100 7200 6500 f.i.r.m.w.a.r.e. 00001e0: 2000 7500 7000 6400 6100 7400 6500 2000 .u.p.d.a.t.e. . 00001f0: 6600 6f00 7200 2000 4200 5400 5800 3300 f.o.r. .B.T.X.3. 0000200: 3800 3100 3000 4a00 2e00 3800 3600 4100 8.1.0.J...8.6.A. 0000210: 0000 0000 0000 0000 0000 0000 0000 0000 ................
Ich entschied dann mich das, DVD vom Wahlmenü der Aufladung aufzuladen zu versuchen F10, gerade da ich mit einer Vermächtnisaufladung anbringen würde. Dieses begann das Fedora 12 anzubringen. Von fuhren alles von der Perspektive eines Benutzers fort, wie mit einer Vermächtnisaufladung anbringen Sie, außer dass die meisten Softwarepaketen vom Internet eher als vom DVD herunterladen wurden. Ist hier, wie Anaconda meine Festplatte gründete:
dev/mapper/vg_ultra-lv_root / ext4 defaults 1 1 UUID=4d93d152-2877-4447-92e8-18d668daba01 /boot ext4 defaults 1 2 UUID=B75E-CB6E /boot/efi vfat umask=0077,shortname=winnt 0 0 /dev/mapper/vg_ultra-lv_swap swap swap defaults 0 0 tmpfs /dev/shm tmpfs defaults 0 0 devpts /dev/pts devpts gid=5,mode=620 0 0 sysfs /sys sysfs defaults 0 0 proc /proc proc defaults 0 0
Der einzige Unterschied zwischen einer Vermächtnisaufladung und einer EFI Aufladung bringen ist dieses Fedora 12 Fächer die Scheibe unter Verwendung GPT (GUID Fach-Tabelle) eher als MBR und das erste Fach an, d.h. wurde das Fach mit einem UUID von B75E-CB6E (EFI Fach), als FAT32 Dateisystem ungefähr 200mb an Größe formatiert. Der ganzer EFI-in Verbindung stehende Code ist auf diesem Fach, weil nur Art des Dateisystems, die EFI versteht, das FAT-Dateisystem ist. Dieses ist das Dateisystem, dass Sie verwenden, wann Sie im EFI Oberteil sind. Es bekannt allgemein als das EFI Systemsfach (BESONDERS).
Dieses schlägt vor, dass Fedora nicht sein konnte, eine EFI Aufladung zu tun setzen auf eine Festplatte mit bestehenden MBR Fächern, die Sie konservieren möchten. Es gibt Weisen des Zerhackens von GPT, um ein MBR in der GPT Tabelle einzubetten, um Fälle zu behandeln, in denen ein Betriebssystem erwartet, ein MBR aber Werkzeuge zu sehen, wie zerteilt, kann diese hybriden Fachentwürfe nicht behandeln und wird in vielen Fällen zerfleischen die Konfiguration. Wenn Sie mit der Einbettung experimentieren möchten, haben ein MBR innerhalb eines GPT einen Blick am Gdiskdienstprogramm. Übrigens brauchen Sie nicht, das EFI Fach anbringen zu lassen, um Fedora 12 laufen zu lassen. Sie konnten es an als erforderliche Basis gerade anbringen, wenn Sie auf etwas in Bezug auf EFI zurückgreifen oder ändern oder die Urladeprogrammkonfigurationsakte redigieren müssen.
Die Installation Fedora-12 verursacht die folgende Verzeichnisstruktur in diesem Fach.
# pwd EFI/redhat ls -al total 236 drwx------. 2 root root 4096 2010-01-28 16:33 . drwx------. 3 root root 4096 2010-01-28 16:09 .. -rwx------. 1 root root 744 2010-01-28 16:33 grub.conf -rwx------. 1 root root 226825 2009-11-16 11:16 grub.efi
Übrigens wird grub.efi von Peter Jones von Red Hat beibehalten und ist eine EFI Version der MADE v0.97 - nicht GRUB2. Die Urladeprogrammkonfigurationsakte grub.conf enthält
default=0 timeout=0 splashimage=(hd0,1)/grub/splash.xpm.gz hiddenmenu title Fedora (2.6.31.12-174.2.3.fc12.x86_64) root (hd0,1) kernel /vmlinuz-2.6.31.12-174.2.3.fc12.x86_64 ro root=/dev/mapper/vg_ultra-lv_root LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYBOARDTYPE=pc KEYTABLE=us rhgb quiet initrd /initramfs-2.6.31.12-174.2.3.fc12.x86_64.img
Ich versuchte EFI Laden des Betriebssystems in Fedora 12, sobald die Installation Fedora-12 abschloß. Es funktionierte nicht an allen, also entschied mich ich, DUO zu benutzen , um das Urladeprogramm Fedora-12 manuell zu laden und zu sehen, was los war. Das EFI Oberteil-Befehlsdiagramm - r bildete richtig im Festplattenlaufwerk der Systeme als fs2 ab:. Ich änderte zu dieser Vorrichtung (gerade wie ändernde Antriebsbuchstaben in DOS) und zu hervorrief \ EFI \ AUFLADUNG \ REDHAT \ GRUB.EFI. Dieses begann das Urladeprogramm Fedora-12 EFI und ich war in der Lage, in Fedora 12 zu kommen.
Um ein Rückstellungsurladeprogramm für die Plattform zur Verfügung zu stellen, fügte ich ein AUFLADUNGS-Unterverzeichnis unter /boot/efi/EFI hinzu und kopierte grub.efi und grub.conf zu diesem Verzeichnis, welches die Akten BOOTX64.EFI und BOOTX64.CONF beziehungsweise umbenennt. Dieses Mal, als ich neu startete, gelangte das System, bis zu dem Versuchen an EFI Aufladung Fedora 12 aber, fiel mit einer Kernpanik früh in der Kerninitialisierung aus.
Weil EFI Laden des Betriebssystems über DUO ohne irgendwelche Probleme arbeitete, nahm ich die Problemlage im Unterschied zwischen der Implementierung DX48BT2 des EFI Ladens des Betriebssystems und der Implementierung DES DUOS an und verbrachte viele unfruchtbaren Stunden die Unterschiede erforschend. Z.B. wird keine EFI Serienvorrichtung durch das DX48BT2 gegründet, während DUO ein verursacht. Ich versuchte auch die üblichen Verdächtigen, d.h. die KernBefehlszeile die noapic Wahlen, acpi=off, edd=off, aber vergebens.
Es dauerte mir durchaus wann, um dieses Problem zu finden, da das DX48BT2 ein sehr schnelles System ist und die Kernpanik früh im Kerninitialisierungsprozeß war. Etwas Informationen wurden auf dem Schirm angezeigt, aber sie wurde durch die Kernpanikdetails überschrieben. Tatsächlich sah sie wie Dracut war das Angeklagte vom Schirmouput aber -diesem ausgefallen, um der Fall nicht zu sein aus. Ich verengte schließlich unten das Problem, indem ich die KernBefehlszeile Wahl boot_delay=100 verwendete, um die Bildschirmausgabe genug zu verlangsamen, damit ich herausfinde, wo im Initialisierungsprozeß die Kernpanik wirklich auftrat. Sie fiel aus, dass die Kernpanik etwas hat, mit dem lokalen APIC ( vorgerückte programmierbare Unterbrechungssteuerung.) zu tun Was bearbeitet für mich im Ende die KernBefehlszeile die nolapic Wahl war. Nachdem es diese Wahl der KernBefehlszeile in /boot/efi/EFI/BOOT.CONF hinzugefügt hatte, war das DX48BT2 zur EFI Aufladung direkt in Fedora 12 in der Lage. Erfolg schließlich!
Um mir zu ermöglichen EFI-Laden des Betriebssystems auf diesem System besser zu erforschen, änderte ich den Aufladungsprozeß damit anstatt direkt in Fedora 12 über das MADE boatloader, das System aufzuladen, das in ein EFI Oberteil aufgeladen wurde. Ich ersetzte /efi/boot/EFI/BOOTX64.xfi durch eine Kopie der Version X68-64 von Shell.efi, löschte /boot/efi/EFI/BOOT/BOOTX64.CONF und addierte einen Startindex STARTUP.NSH, um etwas grundlegende Oberteilkonfigurationsarbeit für mich zu erledigen. Jetzt, als das DX48BT2 neu gestartet wurde, wurde ich oben in einem EFI Oberteil in der Wurzel von BESONDERS fertig. Um in Fedora 12 aufzuladen, rufe ich einfach grub.efi vom EFI Oberteil hervor.
I gründeten die folgende Verzeichnisstruktur in BESONDERS:
# ls -R /boot/efi/EFI /boot/efi/EFI: apps BOOT grub.conf grub.efi boot.nsh /boot/efi/EFI/tools: Attrib.efi Devtree.efi edit.efi hexedit.efi Ls.efi Mv.efi sermode.efi Type.efi Cls.efi diskpart.efi efichk.efi IfConfig.efi mem.efi NShell.efi SmbiosView.efi Unload.efi comp.efi dmem.efi eficompress.efi IpConfig.efi memmap.efi Openinfo.efi stall.efi Ver.efi Cp.efi dmpstore.efi efidecompress.efi LegacyBoot.efi Mkdir.efi pci.efi TelnetMgmt.efi Vol.efi Date.efi Drivers.efi efifmt.efi Load.efi mm.efi Ping.efi Time.efi Dblk.efi Drvcfg.efi err.efi LoadFv.efi mode.efi Resets.efi timezone.efi Devices.efi Drvdiag.efi Guid.efi LoadPciRom.efi Mount.efi Rm.efi Touch.efi /boot/efi/EFI/BOOT: BOOTX64.EFI STARTUP.NSH
Das Werkzeugverzeichnis enthält allein stehende Versionen von vielen des EFI Oberteil errichten-ins zusammen mit etwas zusätzlichen Dienstprogrammen wie diskpart, efichk und efifmt sind Microsoft utiliites.
Wenn Sie EFI Aufladung in Fedora 12, ein Extraunterverzeichnis unter /sys/firmware scheinen, EFI-ralted Informationen zu enthalten. Ist hier, über was Fedora 12 in /sys/firmware/efi/systab berichtete
[root@ultra efi]# cat /sys/firmware/efi/systab MPS=0x0 ACPI20=0x0 ACPI=0x7fefd000 SMBIOS=0x7fdf2f98 HCDP=0x0 BOOTINFO=0x0 UGA=0x0
Die nullwerte für WARTUNGSTAFELN und ACPI20 sind offensichtlich falsch. Ich bin von BOOTINFO und von HCDP ungewiß. Dieses zeigt ein Problem mit der EFI Implementierung im BIOS DX48BT2 eher als Fedora 12 an. Ist hier, was in dieser Akte ist, wenn Fedora 12 vom DUO aufgeladen wird.
MPS=0x7e8a2000 ACPI20=0x7e8a5000 ACPI=0x7e8a4000 SMBIOS=0x7e8a3000 HCDP=0x0 BOOTINFO=0x0 UGA=0x0
Ist hier eine Auflistung von /sys/firmware/efi/vars
# ls /sys/firmware/efi/vars AcpiGlobalVariable-af9ffd67-ec10-488a-9dfc-6cbf5ee22c2e BadgeBackgroundColor-015698bc-457c-43f4-b257-f2ac5ed55f28 BmiGetParams-ffe78db2-eeb3-43c2-a56a-373be2aa4d4f BoardFeatures-94b9e8ae-8877-479a-9842-f5974b82ced3 BootCurrent-8be4df61-93ca-11d2-aa0d-00e098032b8c ConIn-8be4df61-93ca-11d2-aa0d-00e098032b8c ConInDev-8be4df61-93ca-11d2-aa0d-00e098032b8c ConOut-8be4df61-93ca-11d2-aa0d-00e098032b8c ConOutDev-8be4df61-93ca-11d2-aa0d-00e098032b8c DmiData-70e56c5e-280c-44b0-a497-09681abc375e ErrOutDev-8be4df61-93ca-11d2-aa0d-00e098032b8c Events-b452fd8a-c9ca-4764-977e-59d839dd861b FirmwareId-5e559c23-1faa-4ae1-8d4a-c6cf026c766f FirmwareId-efc071ae-41b8-4018-afa7-314b185e578b HecetaTcontrolInfo-d9f4cf5d-1b90-4c8e-8062-451a4737e3b4 HiiDB-1b838190-4625-4ead-abc9-cd5e6af18fe0 ItkBiosModVar-3812723d-7e48-4e29-bc27-f5a39ac94ef1 ItkDataVar-3812723d-7e48-4e29-bc27-f5a39ac94ef1 Lang-8be4df61-93ca-11d2-aa0d-00e098032b8c LangCodes-8be4df61-93ca-11d2-aa0d-00e098032b8c main firmware-05a798ea-39ee-40fc-82c5-622582fa634b MemCeil.-8be4df61-93ca-11d2-aa0d-00e098032b8c MemoryTypeInformation-4c19049f-4137-4dd3-9c10-8b97a83ffdfa MfgDefault-ec87d643-eba4-4bb5-a1e5-3f3e36b20da9 MTC-eb704011-1402-11d3-8e77-00a0c969723b OriginalLang-8be4df61-93ca-11d2-aa0d-00e098032b8c OriginalLangSelect-8be4df61-93ca-11d2-aa0d-00e098032b8c PciLanInfo-0d9a1427-e02a-437d-926b-aa521fd722ba PECIProcessor-46a39b66-1f23-457c-af10-39e08bba56f1 PegSlotStuffed-056e7324-a718-465b-9a84-228f06642b4f recovery firmware-05a798ea-39ee-40fc-82c5-622582fa634b S3SmmVariable-f96f5d2a-9cd4-4dac-b48b-1d8490d87bf5 SetupDefault-ec87d643-eba4-4bb5-a1e5-3f3e36b20da9 Setup-ec87d643-eba4-4bb5-a1e5-3f3e36b20da9 SLP20Magic-41282ef2-9b5a-4eb7-95d8-d9cd7bdce367 sOemT3-4acacc46-a23e-4114-8169-e5edebe2045d supplemental recovery area-05a798ea-39ee-40fc-82c5-622582fa634b SwitchBoard-56772831-0132-4ebe-8842-d65a50c0a7d0 SystemPassword-ec87d643-eba4-4bb5-a1e5-3f3e36b20da9 UUID-d357c710-0ada-4717-8dba-c6adc7cd2b2a
Der Wert in BootCurrent-8be4df61-93ca-11d2-aa0d-00e098032b8c ist FFFF, das eine offensichtlich unzulässige Einstellung ist. Keine anderen Boot* globalen Variablen werden zugänglich für Fedora 12 gemacht, das merkwürdig ist. Wieder zeigt dieses eine arme EFI Implementierung im BIOS DX48BT2 eher als ein Problem mit Fedora 12 an. Alle VorOS globalen Variablen des Raumes EFI, die durch die UEFI Spezifikation definiert werden, sollen gemacht werden zugänglich für das Betriebssystem.
Ist hier eine Auflistung dieses gleichen Verzeichnisses, wenn Fedora 12 unter Verwendung des DUOS aufgeladen wird.
Boot0000-8be4df61-93ca-11d2-aa0d-00e098032b8c Boot0001-8be4df61-93ca-11d2-aa0d-00e098032b8c BootCurrent-8be4df61-93ca-11d2-aa0d-00e098032b8c BootOptionSupport-8be4df61-93ca-11d2-aa0d-00e098032b8c BootOrder-8be4df61-93ca-11d2-aa0d-00e098032b8c ConIn-8be4df61-93ca-11d2-aa0d-00e098032b8c ConInDev-8be4df61-93ca-11d2-aa0d-00e098032b8c ConOut-8be4df61-93ca-11d2-aa0d-00e098032b8c ConOutDev-8be4df61-93ca-11d2-aa0d-00e098032b8c ErrOut-8be4df61-93ca-11d2-aa0d-00e098032b8c ErrOutDev-8be4df61-93ca-11d2-aa0d-00e098032b8c Lang-8be4df61-93ca-11d2-aa0d-00e098032b8c LangCodes-8be4df61-93ca-11d2-aa0d-00e098032b8c MTC-eb704011-1402-11d3-8e77-00a0c969723b PerfDataMemAddr-59d1c24f-50f1-401a-b101-f33e0daed443 PlatformLang-8be4df61-93ca-11d2-aa0d-00e098032b8c PlatformLangCodes-8be4df61-93ca-11d2-aa0d-00e098032b8c Timeout-8be4df61-93ca-11d2-aa0d-00e098032b8c
Merken Sie die zusätzlichen Boot* globalen Variablen und die TIMEOUTglobale Variable pro die UEFI Spezifikation. Wenn ich BootNext im DUO bootmanager eingestellt hatte, würde es auch hier angezeigt worden sein. Wenn Sie von der Welt Microsoft Windows-x86-64 kommen, können einige dieser Namen für globale Variablen zu Ihnen unfamilar sein, wie Microsoft in ihrer endlosen Klugheit die Namen änderte. In Microsofts BCD (Aufladungs-Konfigurations-Daten) z.B. wird BootOrder displayorder genannt und BootNext wird bootsequence genannt.
Außer jenen Ausgaben, die ich bis jetzt in diesem Pfosten, ich beschrieben habe, lief in einige andere Probleme mit EFI Unterstützung auf dem DX48BT2. Das erste Problem ist, dass die UEFI Aufladungswahl auf dieser Plattform sichtbar ist, aber total undokumentiert und nach dem was man hört Intel keine Fragen über diese Eigenschaft beantwortet, weil es eine Tischplattenplattform ist. Dieses muss ändern, während 64-bitBetriebssysteme in in den größeren Haushalten und Festplatten üblichern werden, die Nachstelleisten 2 Gebrauchsguteinzelteile werden.
Ein anderes Problem ist, dass, wenn Sie im EFI Aufladungsmodus sind und das BIOS ein EFI Urladeprogramm wie /EFI/BOOT/BOOTX86.EFI ermittelt, eine Menüwahl [internes Shell] zusammen mit anderen startbaren Antrieben angezeigt wird, wenn Sie die Taste F10 drücken, um vorzuwählen, die fahren Sie , um weg aufzuladen. Jedoch wenn Sie diese Wahl vorwählen, löscht das BIOS einfach den Schirm und verriegelt oben das System. Sie müssen Ihr System neu starten, um dich von diesem zu erholen. Ich kann nur annehmen, dass diese Wahl einen EFI Oberteil- oder EFI Aufladungsmanager laden sollte, aber wurde nie wirklich eingeführt. Etwas von dem Code ist offensichtlich dort, während es EFI Urladeprogramme ermittelt.
Schließlich wenn Sie EFI Aufladung in der BIOS-Einstellung abstellen und folglich zur Vermächtnisaufladung umschalten, zeigt die Aufladungsliste, die durch F10 angezeigt wird noch, alle mögliche Aufladungswahlen der Gewohnheit EFI verursacht unter Verwendung des weniger efibootmgr die [internes Shell-] Aufladungswahl an - ausgenommen jetzt Sie irgendwelche der Wahlen nicht in die Aufladungsliste aufladen können. Die einzige Weise, diese Eintragungen von der Aufladungsliste zu beseitigen ist zur EFI Aufladung zurück in Fedora 12 und Gebrauch efibootmgr, um diese Eintragungen zu löschen.
Ich habe einige Aufgabe in den verschiedenen Foren betreffend Intels EFI Unterstützung auf Tischplattenmotherboards gelesen. Ich bin im Allgemeinen mit den ausgedrückten Gefühlen einverstanden - es ist durchaus Buggy und nicht für Hauptsendezeitgebrauch vorzubereiten. Es lädt in der Tat ein EFI Urladeprogramm weg von einer GPT Scheibe auf, aber das ist über alle, die es tut. Angenommen, Intel in 10 Jahren Erfahrung mit EFI hat, ist dieses ziemlich überraschend. Mindestens müssen sie einen korrekten EFI Aufladungs-Konfigurationsmanager und ein Plattformeinstellungsdienstprogramm für die Schaffung EFI der globalen Variablen zur Verfügung stellen.
Das Fedora-Projekt sollte arbeiten, um EFI zu ermöglichen, das eine x86-64 Verteilung DVD auflädt, indem es Aufladungsladevorrichtungsan \ EFI \ AUFLADUNG \ BOOTX64.CONF zur Verfügung stellt. Es ist nicht genügend meiner Meinung nach, Vermächtnismodus zu verwenden, um eine Installation zu verursachen, die dann zum Sein aufgeladenes EFI fähig ist. Ich verstehe die Schwierigkeit der Unterstützung von MBR und von GPT auf einem einzelnen DVD, aber das Problem ist nicht unüberwindlich. Wenn dieses getan wurden, würde es keine Notwendigkeit an efiboot.img und an efidisk.img geben.
Gut ist das über alle fürs Erste zu diesem Punkt. Ich hoffe, dass dieser Pfosten von etwas Hilfe zu anderen ist, die Schaltung zum EFI Laden des Betriebssystems Fedora 12 betrachten.





















