Pendant quelque temps les dégagements de Fedora ont soutenu l'initialisation d'UEFI (généralement connu sous le nom d'EFI) sur les plates-formes X86-64. Ayant une certaine expérience d'employer EFI sur les plates-formes IA64 au cours des années, j'ai décidé d'examiner dehors l'initialisation d'EFI Fedora 12 sur un de mes systèmes qui est Intel DX48BT2 (la plate-forme de Bonetrail 2) qui vient avec le soutien intégré de l'initialisation d'EFI.
Queest-ce que je veux dire par EFI initialisant un du système d'exploitation tel que Fedora 12 ? Une plate-forme qui soutient l'initialisation d'EFI ne compte pas sur un programme de circuit fermé stocké dans le disque de botte d'un disque dur. Un directeur de botte dans les progiciels de plate-forme sait lire une table de la cloison de disque et comprend la disposition d'un système de fichiers de FAT qui est dans une cloison indiquée. Les coordonnées du directeur de botte sont exécution définie, mais le directeur de botte est requis d'être configurable utilisant des variables globales bien connues d'EFI. Par exemple, le directeur de botte est requis d'inspecter la variable globale de BootOrder pour assurer une liste d'options de botte. Une option de botte est un ou plusieurs variables globales d'EFI de la forme. là où est un nombre de 4 chiffres commençant par 0000, cela contiennent le chemin d'accès de dispositif et d'un chargeur de botte pour charger et fonctionner, et probablement un ensemble d'options à passer à ce chargeur de botte. S'il n'y a aucune variable globale de BootOrder le directeur de botte est requis de vérifier un chargeur de botte de défaut dans un certain nombre d'endroits de défaut spécifiques. Le nom réel du chargeur de botte de défaut est personne à charge d'architecture, par exemple pour x86-64 il est \ EFI \ BOTTE \ BOOTX64.EFI.
Pour permettre l'initialisation d'EFI sur le DX48BT2 vous devez changer quelques arrangements de BIOS. Le contrôleur primaire de SATA doit être configuré employer le mode d'ide, c.-à-d. le mode d'AHCI (interface avancée de contrôleur de centre serveur) doit être handicapé. Apparemment en mode d'AHCI le progiciel de contrôleur de SATA fait partie du CSM (module de soutien de compatibilité) et ne soutient pas un conducteur d'EFI. Même sur Intel le dernier serveur embarque comme le S5500BC, vous doivent employer toujours le mode d'ide si vous voulez l'initialisation d'EFI ! Si vous employez le deuxième contrôleur de SATA qui commande le logiciel RAID de Matrix, vous devez également le désactiver car le commutateur RAID n'est pas soutenu en mode de botte d'EFI. Enfin vous devez permettre l'option d'UEFI dans le menu d'option de botte. Je recommande également que vous choisissez l'option avancée de botte bien qu'il ne soit pas obligatoire.
Je suis quelque peu familiarisé avec EFI initialisant un Windows Vista SP2 x86-64 DVD et étais étonné de constater que je ne pouvais pas à la botte d'EFI par Fedora 12 x86-64 DVD parce que, alors qu'il contient un dossier de /EFI/BOOT/BOOTX64.CONF, il ne contient pas un chargeur-amorce correspondant d'EFI, c.-à-d. /EFI/BOOT/BOOTX64.EFI. Plus au sujet de ces deux dossiers plus tard.
Après, je me suis tourné vers figurer dehors la différence entre efidisk.img et efiboot.img comme ce que ces images contiennent réellement et où elles sont/devraient être utilisés comme moyen pour que semble soit non documenté (ou au moins moi ne pourrait pas facilement trouver la documentation.) J'ai brûlé les images sur deux DVDs séparé et les ai montés pour aller voir le contenu. Je pourrais juste comme facilement avoir monté les images utilisant une commande telle que le suivant et cd'ed dans le bâti de bâti pour regarder le contenu.
mount -o loop -efiboot.img /mnt
Voici une liste de l'image d'efiboot.
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
Le dossier bootx64.efi est réellement le VER v0.97 et BOOTX64.conf est le fichier de la configuration du VER. Il contient une strophe simple de VER, c.-à-d.
#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
Depuis aucun grain ou initrd des images sont incluses dans l'efiboot.img que je suis incertain de ce que vous pouvez réaliser par EFI initialisant une commande d'USB ou un DVD contenant cette image.
Je devrais chance avec efidisk.img. Voici une liste de son contenu :
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
Le contenu de /EFI/BOOT/BOOTX64.conf est les mêmes que dans efiboot.img mais cette fois les images d'initrd et de grain ont existé réellement dans l'annuaire spécifique dans l'image. Toutefois il n'y a aucun signe du chargeur-amorce réel d'EFI, c.-à-d. BOOTX64.EFI. OK, j'ai pensé, là dois être quelque chose que je ne comprends pas au sujet de comment à la botte Fedora 12 d'EFI.
Après configuration du BIOS pour permettre l'initialisation d'EFI comme discutée ci-dessus, j'ai rechargé le DX48BT2 avec la version d'UEFI (efidisk.iso) de Fedora 12 dans la commande de DVD. Malheureusement le système a signalé qu'aucun dispositif amorçable n'a été trouvé. Fedora 12 n'a pas même essayé et n'a pas installé comme se serait produit avec un mode de botte de legs installent. Pour voir ce qui se produisait, j'avais l'habitude le DUET sur une clef d'USB pour initialiser dans un EFI Shell et ai vérifié la disposition de système de fichiers de DVD. Elle était, comme j'ai prévu, corrigent par caractéristiques d'EFI et d'UEFI mais il n'y avait aucun BOOTX64.EFI sur le DVD.
J'ai également inspecté une décharge du BIOS sur le DX48BT2 pour voir s'il y avait des cordes des textes dans le BIOS qui pourrait me donner un indice quant à ce qu'être le problème pourrait. Il n'y avait aucune corde appropriée des textes. Cependant j'ai confirmé que le BIOS, ou au moins les pièces que j'ai inspectées, EFI-est basé comme vous pouvez voir regarder cette décharge des bytes premiers de la binaire. Les 16 premiers bytes sont la capsule GUID, c.-à-d. 3B6686BD-0D76-4030-B70E-B5519E2FC5A0 d'EFI. Les chaînes de caractères sont UTF-16 ou UCS-2, c.-à-d. 16 arrangements de codage de caractère de bit définis dans les spécifications d'Unicode.
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 ................
J'ai alors décidé d'essayer d'initialiser le DVD du menu d'options de la botte F10 juste comme j'avec une botte de legs installerais. Ceci a commencé Fedora 12 pour installer. Là de tout a procédé à partir de la perspective d'un utilisateur comme avec une botte de legs installez sauf que la plupart des progiciels ont été téléchargées de l'Internet plutôt que du DVD. Voici comment l'Anaconda a installé mon disque dur :
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
La seule différence entre une botte de legs et une botte d'EFI installent est ce Fedora 12 cloisons le disque utilisant GPT (Tableau de cloison de GUID) plutôt que MBR et la première cloison, c.-à-d. la cloison avec un UUID de B75E-CB6E (cloison d'EFI), a été composée comme FAT32 système de fichiers approximativement 200mb dans la taille. Tout le code EFI-connexe est sur cette cloison parce que seulement le type de système de fichiers qu'EFI comprend est le système de fichiers de FAT. C'est le système de fichiers que vous employez quand vous êtes dans la coquille d'EFI. On le connaît généralement comme cloison de système d'EFI (EN PARTICULIER).
Ceci suggère que Fedora ne pourrait pas pouvoir faire une botte d'EFI installent sur un disque dur avec les cloisons existantes de MBR que vous voulez préserver. Il y a des manières d'entailler GPT pour enfoncer un MBR dans la table de GPT afin de traiter des cas où un du système d'exploitation compte voir un MBR mais des outils comme séparé ne peut pas manipuler ces arrangements hybrides de cloison et mutilera dans beaucoup de cas la configuration. Si vous voulez expérimenter avec l'encastrement un MBR dans un GPT va voir l'utilité de disque G. D'ailleurs, vous n'avez pas besoin de faire monter la cloison d'EFI pour courir Fedora 12. Vous pourriez juste la monter sur en tant que base nécessaire si vous devez accéder ou changer à quelque chose concernant EFI ou éditer le fichier de configuration de chargeur-amorce.
L'installation de Fedora 12 crée la structure d'annuaire suivante dans cette cloison.
# 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
D'ailleurs grub.efi n'est maintenu par Peter Jones de Red Hat et est une version d'EFI du VER v0.97 - pas GRUB2. Le fichier de configuration de chargeur-amorce grub.conf contient
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
J'ai essayé l'initialisation d'EFI dans Fedora 12 une fois que l'installation de Fedora 12 accomplissait. Cela n'a pas fonctionné du tout ainsi j'ai décidé d'employer le DUET pour charger manuellement le chargeur-amorce de Fedora 12 et pour voir ce qui continuait. La carte de commande de coquille d'EFI - r a correctement tracé dans la commande du disque dur des systèmes comme fs2 :. J'ai changé en ce dispositif (juste comme les lettres changeantes d'entraînement dans le DOS) et ai appelé \ EFI \ BOTTE \ REDHAT \ GRUB.EFI. Ceci a commencé le chargeur-amorce de Fedora 12 EFI et je pouvais entrer dans Fedora 12.
Pour fournir un chargeur-amorce de défaut pour la plate-forme, j'ai ajouté un sous-répertoire de BOTTE sous /boot/efi/EFI et ai copié grub.efi et grub.conf à cet annuaire retitrant les dossiers BOOTX64.EFI et BOOTX64.CONF respectivement. Cette fois, quand j'ai rechargé, le système a obtenu dans la mesure où essayant à la botte Fedora 12 d'EFI mais échoué avec une panique de grain tôt dans l'initialisation de grain.
Puisque l'initialisation d'EFI par l'intermédiaire du DUET n'a fonctionné sans aucun problème, j'ai assumé la configuration de problème dans la différence entre l'exécution DX48BT2 de l'initialisation d'EFI et de l'exécution du DUET et ai passé beaucoup d'heures stériles explorant les différences. Par exemple, aucun dispositif périodique d'EFI n'est installé par le DX48BT2 tandis que le DUET crée un. J'ai également jugé les suspects habituels, c.-à-d. la ligne de commande de grain options noapic, acpi=off, edd=off, mais en vain.
Cela m'a pris tout à fait un moment pour trouver ce problème car le DX48BT2 est un système très rapide et la panique de grain était tôt dans le processus d'initialisation de grain. De l'information a été affichée sur l'écran mais elle a été recouverte par les détails de panique de grain. En fait, elle a ressemblé à Dracut était le coupable de l'ouput d'écran mais ceci s'est avéré ne pas être le cas. Je finalement ai rétréci vers le bas le problème en employant la ligne de commande de grain l'option boot_delay=100 pour ralentir le rendement d'écran suffisamment pour que je localise où dans le processus d'initialisation la panique de grain se produisait réellement. Elle s'est avérée que la panique de grain a quelque chose faire avec l'APIC local (le contrôleur d'interruption programmable avancé.) Ce que travaillé pour moi à la fin était la ligne de commande de grain option nolapic. Après avoir ajouté cette option à la ligne de commande de grain dans /boot/efi/EFI/BOOT.CONF le DX48BT2 pouvait à la botte d'EFI directement dans Fedora 12. Succès enfin !
Pour me permettre d'explorer mieux l'EFI-initialisation sur ce système, j'ai changé le processus de botte de sorte qu'au lieu d'initialiser directement en Fedora 12 par l'intermédiaire du boatloader de VER, le système initialisé dans une coquille d'EFI. J'ai remplacé /efi/boot/EFI/BOOTX64.xfi par une copie de la version X68-64 de Shell.efi, ai supprimé /boot/efi/EFI/BOOT/BOOTX64.CONF et ai ajouté un manuscrit de démarrage STARTUP.NSH pour effectuer un certain travail de base de configuration de coquille pour moi. Maintenant où le DX48BT2 a été rechargé, j'ai fini vers le haut dans une coquille d'EFI dans la racine du EN PARTICULIER. Pour initialiser dans Fedora 12, j'appelle simplement grub.efi de la coquille d'EFI.
I a installé la structure d'annuaire suivante dans EN PARTICULIER :
# 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
L'annuaire d'outils contient des versions autonomes de beaucoup du construire-Institut central des statistiques de coquille d'EFI ainsi que certaines utilités additionnelles telles que le diskpart, efichk et l'efifmt sont des utiliites de Microsoft.
Quand vous botte d'EFI dans Fedora 12, un sous-répertoire supplémentaire semble sous /sys/firmware contenir l'information d'EFI-ralted. Voici ce que Fedora 12 a rapporté dans /sys/firmware/efi/systab
[root@ultra efi]# cat /sys/firmware/efi/systab MPS=0x0 ACPI20=0x0 ACPI=0x7fefd000 SMBIOS=0x7fdf2f98 HCDP=0x0 BOOTINFO=0x0 UGA=0x0
Les valeurs nulles pour des MP et ACPI20 sont évidemment erronées. Je suis incertain de BOOTINFO et de HCDP. Ceci indique un problème avec l'exécution d'EFI dans le DX48BT2 BIOS plutôt que Fedora 12. Voici ce qui est dans ce dossier quand Fedora 12 est initialisé du DUET.
MPS=0x7e8a2000 ACPI20=0x7e8a5000 ACPI=0x7e8a4000 SMBIOS=0x7e8a3000 HCDP=0x0 BOOTINFO=0x0 UGA=0x0
Voici une liste de /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
La valeur dans BootCurrent-8be4df61-93ca-11d2-aa0d-00e098032b8c est FFFF qui est un arrangement évidemment inadmissible. Aucune autre variable globale de Boot* n'est rendue disponible à Fedora 12 qui est étrange. Encore ceci indique une exécution pauvre d'EFI dans le DX48BT2 BIOS plutôt qu'un problème avec Fedora 12. Toutes les pré-OS variables globales de l'espace EFI définies par les spécifications d'UEFI sont censées être rendues disponibles au du système d'exploitation.
Voici une liste de cet même annuaire quand Fedora 12 est initialisé utilisant le DUET.
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
Notez les variables globales additionnelles de Boot* et la variable globale de temps mort par spécifications d'UEFI. Si j'avais placé BootNext dans le bootmanager de DUET il également aurait été montré ici. Si vous venez du monde de Microsoft Windows x86-64, certains de ces noms pour des variables globales peuvent être unfamilar à vous comme Microsoft dans leur sagesse infinie a changé les noms. Dans le BCD de Microsoft (données de configuration de botte), par exemple, BootOrder s'appelle le displayorder et BootNext s'appelle le bootsequence.
Sans compter que ces issues que j'ai décrites jusqu'ici dans ce poteau, j'a rencontré un certain nombre d'autres problèmes avec l'appui d'EFI sur le DX48BT2. Le premier problème est que l'option de botte d'UEFI sur cette plate-forme est évidente mais totalement non documenté et par tous les comptes Intel ne répondra à aucune question au sujet de ce dispositif parce que c'est une plate-forme de bureau. Ceci devra changer pendant que les logiciels d'exploitation 64-bit deviennent plus communs dans les ménages et des disques durs plus grands que la contre-clavette 2 deviennent des articles des produits.
Un autre problème est que quand vous êtes en mode de botte d'EFI et le BIOS détecte un chargeur-amorce d'EFI tel que /EFI/BOOT/BOOTX86.EFI, une option de menu « [Shell interne] » est présentée avec d'autres commandes amorçables quand vous appuyez sur la touche F10 pour choisir que « conduisez » pour initialiser au loin. Cependant, si vous choisissez cette option le BIOS efface simplement l'écran et ferme à clef vers le haut le système. Vous devez recharger votre système pour récupérer de ceci. Je peux seulement supposer que cette option a été prévue pour charger un directeur de coquille d'EFI ou de botte d'EFI mais jamais ai été mis en application réellement. Une partie du code est évidemment là pendant qu'elle détecte des chargeurs-amorce d'EFI.
En conclusion, si vous arrêtez la botte d'EFI dans l'installation de BIOS et retournez ainsi à la botte de legs, la liste de botte montrée par F10 présente toujours toutes les options de botte de la coutume EFI créé utilisant l'efibootmgr moins [l'option de botte de Shell interne] - à moins que maintenant vous ne pouvez pas initialiser des options l'unes des dans la liste de botte. La seule manière d'éliminer ces entrées de la liste de botte est à la botte d'EFI de nouveau dans Fedora 12 et l'efibootmgr d'utilisation pour supprimer ces entrées.
J'ai lu un certain nombre de signalisations dans divers forum concernant l'appui de l'EFI d'Intel sur les cartes mères de bureau. Je suis d'accord généralement avec les sentiments exprimés - c'est tout à fait boguet et ne pas préparer pour l'usage de premières parties de soirée. Il initialise en effet un chargeur-amorce d'EFI outre d'un disque de GPT mais c'est au sujet de tous qu'il fait. Étant donné qu'Intel a sur 10 ans d'expérience avec EFI, c'est tout à fait étonnant. Au minimum ils doivent fournir un directeur approprié de configuration de botte d'EFI et une utilité d'installation de plate-forme pour créer des variables globales d'EFI.
Le projet de Fedora devrait fonctionner pour permettre EFI initialisant x86-64 une distribution DVD en fournissant à de chargeur de botte \ EFI \ BOTTE \ BOOTX64.CONF. Il n'est pas suffisant à mon avis d'employer le mode de legs pour créer une installation qui est alors capable d'être EFI initialisé. Je comprends la difficulté de soutenir MBR et GPT sur un DVD simple mais le problème n'est pas insurmontable. Si ceci étaient faits, il n'y aurait aucun besoin d'efiboot.img et d'efidisk.img.
Bien, c'est allumé au sujet de tous pour maintenant cette issue. J'espère que ce poteau sera d'aide à d'autres qui considèrent la commutation à l'initialisation Fedora 12 d'EFI.





















