For some time Fedora releases have supported لبعض الوقت فيدورا النشرات دعموا UEFI UEFI (more commonly known as EFI) booting on (المعروفة أكثر باسم اتحاد الصناعات) على تمهيد X86-64 X86 - 64 platforms. المنصات. Having some experience of using EFI on IA64 platforms over the years, I decided to test out EFI booting Fedora 12 on one of my systems which is an Intel DX48BT2 (Bonetrail 2) platform that comes with built-in support for EFI booting. وجود بعض الخبرة في استخدام اتحاد الصناعات على منصات IA64 على مر السنين ، فقد قررت لاختبار اتحاد الصناعات تشغيل فيدورا 12 في بلدي واحد من النظم التي هي DX48BT2 إنتل (Bonetrail 2) منصة الذي يأتي مع المدمج في تقديم الدعم لاتحاد الصناعات تمهيد.
What do I mean by EFI booting an operating system such as Fedora 12? ماذا يعني من جانب اتحاد الصناعات تمهيد نظام التشغيل مثل فيدورا 12؟ A platform that supports EFI booting does not rely upon a bootstrap program stored in boot record of a hard disk. منصة تدعم اتحاد الصناعات تمهيد لا تعتمد على برنامج بووتسترب المخزنة في سجل التمهيد من القرص الثابت. A boot manager in the platform firmware knows how to read a disk's partition table and understands the layout of a FAT filesystem which is in a designated partition. وقال مدير التشغيل في المنصة الثابتة يعرف كيفية قراءة القرص جدول القسم تخطيط ويفهم من القوات المسلحة التوغولية نظام الملفات التي هي في قسم معين. The details of the boot manager are implementation defined, but the boot manager is required to be configurable using well-known EFI global variables. تفاصيل مدير التمهيد لتنفيذ محددة ، ولكن مدير التمهيد المطلوب لتكوين باستخدام معروفة اتحاد الصناعات المتغيرات العالمية. For example, the boot manager is required to inspect the BootOrder global variable for a list of boot options. على سبيل المثال ، مدير التمهيد المطلوب لتفقد متغير BootOrder العالمية للحصول على قائمة خيارات التمهيد. A boot option is one or more EFI global variables of the form BootXXXX. وثمة خيار التمهيد هو واحد أو أكثر من اتحاد الصناعات المتغيرات العالمية للBootXXXX شكل من الأشكال. where XXXX is a 4 digit number starting with 0000, that contain the device and path name of a boot loader to load and run, and possibly a set of options to pass to that boot loader. حيث XXXX هو رقم 4 أرقام بدءا من 0000 ، والتي تحتوي على الجهاز ، واسم المسار من محمل التمهيد لتحميل وتشغيل ، وربما مجموعة من الخيارات لتمريرها إلى أنه محمل التمهيد. If there is no BootOrder global variable the boot manager is required to check for a default boot loader in a number of specified default locations. إذا لم يكن هناك متغير BootOrder العالمية مدير التمهيد هو مطلوب للتحقق من أجل التمهيد الافتراضي محمل في عدد من المواقع الافتراضي المحدد. The actual name of the default boot loader is architecture dependant, eg for x86-64 it is \EFI\BOOT\BOOTX64.EFI . اسم الفعلي التمهيد الافتراضي هو محمل العمارة المعالين ، على سبيل المثال لx86 - 64 هو \ اتحاد الصناعات \ الحذاء \ BOOTX64.EFI.
To enable EFI booting on the DX48BT2 you must change some BIOS settings. لتمكين اتحاد الصناعات تمهيد على DX48BT2 يجب تغيير بعض الإعدادات السير. The primary SATA controller must be configured to use IDE mode, ie the ساتا تحكم الأساسي يجب أن يكون تكوين لاستخدام طريقة بيئة تطوير متكاملة ، أي AHCI اهكي (Advanced Host Controller Interface) mode must be disabled. (للمستوى المتقدم واجهة تحكم المضيف) واسطة يجب تعطيل. Apparently in AHCI mode the SATA controller firmware is part of the CSM (Compatibility Support Module) and does not support an EFI driver. على ما يبدو في وضع اتى على ساتا تحكم الثابتة هو جزء من المجلس الأعلى للقضاء (توافق دعم وحدة) و لا يعتمد على برنامج تشغيل اتحاد الصناعات. Even on Intel's latest server boards such as the S5500BC, you still have to use IDE mode if you want EFI booting! حتى على لوحات إنتل أحدث خادم مثل S5500BC ، لا يزال لديك لاستخدام بيئة تطوير متكاملة وضع اتحاد الصناعات إذا كنت تريد تشغيل! If you are using the second SATA controller which controls the Matrix software RAID, you must also disable it as SW RAID is not supported in EFI boot mode. إذا كنت تستخدم وحدة تحكم ساتا الثانية التي تسيطر على برمجيات مصفوفة الغارة ، يجب عليك أيضا تعطيل جنوب غرب الغارة بأنها غير معتمد في اتحاد الصناعات وضع التمهيد. Finally you must enable the UEFI option in the Boot option menu. وأخيرا يجب عليك تمكين الخيار UEFI في التمهيد خيار القائمة. I also recommend that you select the advanced boot option although it is not mandatory. وأوصي أيضا بأن تقوم بتحديد الخيار التمهيد متقدم على الرغم من أنها ليست إلزامية.
I am somewhat familiar with EFI booting a Windows Vista SP2 x86-64 DVD and was surprised to find that I was unable to EFI boot a Fedora 12 x86-64 DVD because, while it contains a /EFI/BOOT/BOOTX64.CONF file, it does not contain a corresponding EFI bootloader, ie /EFI/BOOT/BOOTX64.EFI . أنا مألوفة نوعا ما مع اتحاد الصناعات تشغيل ويندوز فيستا SP2 x86 - 64 دي في دي وفوجئت بأنني لم يتمكن من اتحاد الصناعات التمهيد لفيدورا 12 x86 - 64 دي في دي لأنه ، في حين أنها تحتوي على / EFI/BOOT/BOOTX64.CONF الملف ، انها لا تحتوي على المناظرة اتحاد الصناعات بووتلوأدر] ، أي / EFI/BOOT/BOOTX64.EFI. More about these two files later. المزيد حول هذين الملفين في وقت لاحق.
Next, I turned to figuring out the difference between efidisk.img and efiboot.img as what these images actually contain and where they are/should be used for seems to be undocumented (or at least I could not easily find the documentation.) I burned the images onto two separate DVDs and mounted them to have a look at the contents. المقبل ، والتفت الى معرفة الفرق بين efidisk.img وefiboot.img حسب ما تحتوي على هذه الصور فعلا وأين هم / ينبغي أن تستخدم ليبدو أن لا يحملون وثائق (أو على الأقل لم يكن من السهل العثور على وثائق.) أنا أحرق الصور على فصل اثنين من أقراص الفيديو الرقمية والتي شنت عليهم من أجل إلقاء نظرة على محتوياتها. I could just as easily have mounted the images using a command such as the following and cd'ed into the mount mount to look at the contents. أنا يمكن بسهولة مثلما تزايدت الصور باستخدام أمر مثل التالية وcd'ed في جبل جبل لإلقاء نظرة على محتوياتها.
mount -o loop -efiboot.img /mnt
Here is a listing of the efiboot image. هنا هو سرد للصورة 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
The file bootx64.efi is actually GRUB v0.97 and BOOTX64.conf is GRUB's configuration file. وBOOTX64.EFI الملف هو فعلا اليرقة v0.97 وBOOTX64.conf هو اليرقة في ملف التكوين. It contains a single GRUB stanza, ie وهو يحتوي على واحد اليرقة المقطع الشعري ، أي
#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
Since no kernel or initrd images are included in the efiboot.img I am unsure of what you can achieve by EFI booting a USB drive or DVD containing this image. نظرا لعدم النواة أو الصور initrd مدرجة في efiboot.img وأنا متأكد من ما تستطيع تحقيقه من خلال اتحاد الصناعات تمهيد لالناقل التسلسلي أو دي في دي يحتوي على هذه الصورة.
I had better luck with efidisk.img . كان لي حظ أفضل مع efidisk.img. Here is a listing of its contents: هنا هي قائمة محتوياته :
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
The contents of /EFI/BOOT/BOOTX64.conf are the same as in efiboot.img but this time the initrd and kernel images actually existed in the specified directory in the image. محتويات / EFI/BOOT/BOOTX64.conf هي نفسها كما في efiboot.img ولكن هذه المرة initrd والصور نواة موجودة فعلا في الدليل المحدد في الصورة. However there is no sign of the actual EFI bootloader, ie BOOTX64.EFI . ومع ذلك ليس هناك ما يشير الفعلي لاتحاد الصناعات بووتلوأدر] ، أي BOOTX64.EFI. OK, I thought, there must be something I do not understand about how to EFI boot Fedora 12. حسنا ، كنت اعتقد ، يجب أن يكون هناك شيء أنا لا أفهم كيف أن اتحاد الصناعات التمهيد فيدورا 12.
After configuring the BIOS to enable EFI booting as discussed above, I rebooted the DX48BT2 with the UEFI version ( efidisk.iso ) of Fedora 12 in the DVD drive. بعد تكوين السير لتمكين اتحاد الصناعات تمهيد على النحو المذكور أعلاه ، وأنا أعيد تشغيل DX48BT2 مع الإصدار UEFI (efidisk.iso) من فيدورا 12 في محرك أقراص دي في دي. Unfortunately the system reported that no bootable devices were found. للأسف النظام ذكرت أنه لا توجد أجهزة للتمهيد تم العثور على. Fedora 12 did not even try and install as would have occurred with a legacy boot mode install. فيدورا 12 لم تحاول حتى وتثبيت ما كان يمكن أن يحدث مع تمهيد تركة تثبيت الوضع. To see what was happening, I used لرؤية ما كان يحدث ، وأنا استخدم DUET دويتو on a USB key to boot into an EFI Shell and checked the DVD filesystem layout. على أوسب] مفتاح للتمهيد الى شل اتحاد الصناعات ودققت في دي في دي نظام الملفات تخطيط. It was, as I expected, correct per the EFI and UEFI specifications but there was no BOOTX64.EFI on the DVD. كان ، كما كنت أتوقع ، الصحيح لكل من اتحاد الصناعات وUEFI المواصفات ولكن لم يكن هناك BOOTX64.EFI على دي في دي.
I also inspected a dump of the BIOS on the DX48BT2 to see if there were any text strings in the BIOS which might give me a clue as to what the problem might be. وأود أيضا أن تفقد تفريغ السير على DX48BT2 لمعرفة ما إذا كانت هناك أية سلاسل النص في السير التي قد تعطيني دليل على ما قد يكون مشكلة. There were no relevant text strings. لم يكن هناك نص السلاسل ذات الصلة. However I confirmed that the BIOS, or at least the parts I inspected, is EFI-based as you can see looking at this dump of the first few bytes of the binary. ولكن أنا أكد أن السير ، أو على الأقل الأجزاء الأول تفتيشها ، واتحاد الصناعات المستندة كما ترون تبحث في هذا تفريغ بايت القليلة الأولى من الثنائية. The first 16 bytes are the EFI capsule GUID, ie 3B6686BD-0D76-4030-B70E-B5519E2FC5A0. 16 بايت الأولى هي كبسولة اتحاد الصناعات المعرف الفريد العمومي ، أي 3B6686BD - 0D76 - 4030 - B70E - B5519E2FC5A0. The character strings are either UTF-16 or UCS-2, ie 16 bit character encoding schemes defined in the Unicode specification. الحرف السلاسل هي إما حسابات الأمانة الأحادية - 16 أو UCS - 2 ، أي 16 بت ترميز الأحرف مخططات المعرفة في مواصفة يونيكود.
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 ................
I then decided to try booting the DVD from the F10 boot options menu just as I would with a legacy boot install. وبعد ذلك قررت لمحاولة تشغيل دي في دي من الخيارات F10 القائمة التمهيد كما لو كان مع تمهيد تركة تثبيت. This started the Fedora 12 install. هذا بدأ تثبيت فيدورا 12. From there everything proceeded from a user's perspective as with a legacy boot install except that most of the software packages were downloaded from the Internet rather than from the DVD. من هناك كل شيء انطلاقا من وجهة نظر المستخدم كما هو الحال مع تمهيد تركة تثبيت إلا أن معظم حزم البرامج تم تحميلها من شبكة الإنترنت بدلا من دي في دي. Here is how Anaconda set up my hard disk: هنا هو كيف اناكوندا إعداد القرص الصلب بلدي :
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
The only difference between a legacy boot and an EFI boot install is that Fedora 12 partitions the disk using والفرق الوحيد بين تمهيد تركة والتمهيد هو أن اتحاد الصناعات تثبيت فيدورا 12 أقسام القرص باستخدام GPT التعريفة التفضيلية العامة (GUID Partition Table) rather than MBR and the first partition, ie the partition with a UUID of B75E-CB6E (EFI partition), was formatted as a FAT32 filesystem approximately 200mb in size. (المعرف الفريد العمومي جدول قسم) بدلا من حصر والقسم الأول ، أي التقسيم مع UUID من B75E - CB6E (اتحاد الصناعات التقسيم) ، كما تمت تهيئة نظام ملفات FAT32 حوالي 200MB في الحجم. All the EFI-related code is on this partition because only type of filesystem that EFI understands is the FAT filesystem. كل من اتحاد الصناعات ذات الصلة هو رمز على هذا القسم بسبب النوع الوحيد من نظام الملفات اتحاد الصناعات أن يفهم هو نظام الملفات الدهون. This is the filesystem that you are using when you are in the EFI shell. هذا هو نظام الملفات الذي تستخدمه عندما كنت في وعاء اتحاد الصناعات. It is commonly known as the EFI system partition (ESP). فمن المعروف باسم اتحاد الصناعات قسم النظام (اسبانيا).
This suggests that Fedora might not be able to do an EFI boot install onto a hard disk with existing MBR partitions which you want to preserve. هذا يوحي بأن فيدورا قد لا تكون قادرة على التمهيد للقيام اتحاد الصناعات تثبيت على القرص الصلب مع الأقسام الموجودة حصر التي تريد المحافظة عليها. There are ways of hacking GPT to embed an MBR in the GPT table in order to handle cases where an operating system is expecting to see an MBR but tools like parted cannot handle these hybrid partition schemes and will in many cases mangle the configuration. هناك طرق القرصنة التعريفة التفضيلية العامة لترسيخ وحصر في جدول التعريفة التفضيلية العامة من أجل التعامل مع الحالات التي يكون فيها نظام التشغيل يتوقع أن نرى حصر ولكن أدوات مثل مفترق لا يمكن التعامل مع هذه المخططات التقسيم الهجين ويؤدي في حالات كثيرة فسد التكوين. If you want to experiment with embedding an MBR within a GPT have a look at the gdisk utility. إذا كنت ترغب في تجربة مع تضمين عنصر حصر ضمن التعريفة التفضيلية العامة أن يكون النظر في جدوى gdisk. By the way, you do not need to have the EFI partition mounted to run Fedora 12. بالمناسبة ، أنت لست بحاجة إلى أن يكون القسم اتحاد الصناعات المركبة لتشغيل فيدورا 12. You could just mount it on an as needed basis if you need to access or change something relating to EFI or edit the bootloader configuration file. هل يمكن أن مجرد أنه جبل على أساس ما هو مطلوب إذا كنت تحتاج إلى الوصول أو تغيير شيء أو اتحاد الصناعات المتصلة بتحرير بووتلوأدر] ملف التكوين.
The Fedora 12 installation creates the following directory structure in this partition. فيدورا 12 التثبيت يخلق بنية الدليل التالي في هذا القسم.
# 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
By the way grub.efi is maintained by Peter Jones of Red Hat and is an EFI version of GRUB v0.97 – not GRUB2. من grub.efi الطريقة هي التي تحتفظ بها بيتر جونز من وريد هات هي نسخة من اتحاد الصناعات اليرقة v0.97 -- لا GRUB2. The bootloader configuration file grub.conf contains وبووتلوأدر] تكوين ملف يحتوي على grub.conf
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
I tried EFI booting into Fedora 12 once the Fedora 12 installation completed. حاولت اتحاد الصناعات تمهيد إلى فيدورا فيدورا 12 مرة في 12 إكمال التثبيت. It did not work at all so I decided to use انها لا تعمل على الإطلاق لذلك قررت استخدام DUET دويتو to manually load the Fedora 12 bootloader and see what was going on. يدويا لتحميل فيدورا 12 بووتلوأدر] ، وانظر ما كان يحدث. The EFI shell command map -r correctly mapped in the systems's hard disk drive as fs2: . اتحاد الصناعات قذيفة الأمر الخريطة ص تعيينها بشكل صحيح في نظم في محرك القرص الثابت كما fs2 :. I changed to this device (just like changing drive letters in DOS) and invoked \EFI\BOOT\REDHAT\GRUB.EFI . لقد غيرت لهذا الجهاز (مثل تغيير محركات الأقراص في دوس) ، والتذرع \ اتحاد الصناعات \ الحذاء \ ريدهات \ GRUB.EFI. This started the Fedora 12 EFI bootloader and I was able to get into Fedora 12. هذا وبدأ اتحاد الصناعات فيدورا 12 بووتلوأدر] وكنت قادرا على الوصول الى فيدورا 12.
To provide a default bootloader for the platform, I added a BOOT subdirectory under /boot/efi/EFI and copied grub.efi and grub.conf to this directory renaming the files BOOTX64.EFI and BOOTX64.CONF respectively. لتوفير بووتلوأدر] الافتراضية للمنصة ، وأنا أضيف دليل فرعي تحت الحذاء / الحذاء / اتحاد الصناعات / اتحاد الصناعات ونسخها وgrub.efi grub.conf إلى هذا الدليل إعادة تسمية الملفات BOOTX64.EFI وBOOTX64.CONF على التوالي. This time, when I rebooted, the system got as far as trying to EFI boot Fedora 12 but failed with a kernel panic early in the kernel initialization. هذه المرة ، عندما أعيد تشغيل ، ونظام حصلت بقدر ما يحاول اتحاد الصناعات التمهيد فيدورا 12 لكنه فشل في حالة من الهلع مع النواة في وقت مبكر من التهيئة النواة.
Because EFI booting via DUET worked without any problems, I assumed the problem lay in the difference between the DX48BT2 implementation of EFI booting and DUET's implementation and spent many fruitless hours exploring the differences. لأن اتحاد الصناعات تمهيد طريق ديو عمل دون أي مشاكل ، وانا افترض ان المشكلة تكمن في الفرق بين تنفيذ DX48BT2 من اتحاد الصناعات والتمهيد لتنفيذ ديو وقضى العديد من ساعات عقيمة استكشاف الاختلافات. For example, no EFI serial device is set up by the DX48BT2 whereas DUET creates one. على سبيل المثال ، لا اتحاد الصناعات المسلسل هو الجهاز الذي أنشأه DX48BT2 حين دويتو يخلق واحد. I also tried the usual suspects, ie the kernel command line options noapic , acpi=off , edd=off , but to no avail. كما أنني حاولت من المشتبه بهم المعتادين ، أي نواة خيارات سطر الأوامر noapic ، أكبي = إيقاف ، إد = حالا ، ولكن من دون جدوى.
It took me quite a while to find this problem as the DX48BT2 is a very fast system and the kernel panic was early in the kernel initialization process. استغرق مني الكثير من الوقت للعثور على هذه المشكلة كما DX48BT2 هو نظام سريع جدا ، وكان الذعر النواة في وقت مبكر من عملية التهيئة النواة. Some information was displayed on the screen but it was overwritten by the kernel panic details. بعض المعلومات التي تم عرضها على الشاشة ولكن كان من التفاصيل الكتابة بواسطة الذعر النواة. In fact, it looked like Dracut was the culprit from the screen ouput but this turned out not to be the case. في الواقع ، بدا ان Dracut كان الجاني من ouput الشاشة ولكن هذا تبين أن لا يكون هذا هو الحال. I finally narrowed down the problem by using the kernel command line option boot_delay=100 to slow down the screen output sufficiently for me to locate where in the initialization process the kernel panic was actually occurring. وأخيرا ضاقت المشكلة باستخدام نواة القيادة boot_delay خيار سطر = 100 الى ابطاء انتاج الشاشة بما فيه الكفاية بالنسبة لي لتحديد مكان في عملية التهيئة للذعر النواة التي تحدث في الواقع. It turned out that the kernel panic has something to do with the Local اتضح أن الذعر نواة لديه شيء للقيام مع محلي APIC ايبك (Advanced Programmable Interrupt Controller.) What worked for me in the end was the kernel command line option nolapic . (متقدمة للبرمجة يقاطع المراقب المالي.) ماذا عملت لي في النهاية هو النواة خيار سطر الأوامر nolapic. After adding this option to the kernel command line in /boot/efi/EFI/BOOT.CONF the DX48BT2 was able to EFI boot directly into Fedora 12. بعد إضافة هذا الخيار لقيادة النواة في خط / الحذاء / اتحاد الصناعات / اتحاد الصناعات / BOOT.CONF في DX48BT2 كان قادرا على اتحاد الصناعات التمهيد مباشرة إلى فيدورا 12. Success at last! النجاح في الماضي!
To enable me to better explore EFI-booting on this system, I changed the boot process so that instead of booting directly into Fedora 12 via the GRUB boatloader, the system booted into an EFI shell. لتمكين لي لاستكشاف أفضل اتحاد الصناعات التمهيد على هذا النظام ، لقد غيرت عملية التمهيد لذلك أنه بدلا من تمهيد مباشرة إلى فيدورا 12 عبر boatloader اليرقة ، ونظام تمهيد إلى قذيفة اتحاد الصناعات. I replaced /efi/boot/EFI/BOOTX64.xfi with a copy of the X68-64 version of Shell.efi , deleted /boot/efi/EFI/BOOT/BOOTX64.CONF and added a startup script STARTUP.NSH to do some basic shell configuration work for me. أنا محل / efi/boot/EFI/BOOTX64.xfi مع نسخة من x68 - 64 إصدار Shell.efi ، حذف / boot/efi/EFI/BOOT/BOOTX64.CONF وأضاف بدء STARTUP.NSH النصي للقيام ببعض التكوين الأساسي قذيفة العمل بالنسبة لي. Now when the DX48BT2 was rebooted, I ended up in an EFI shell in the root of the ESP. الآن عندما أعيد تشغيل DX48BT2 ، لقد انتهى بي الامر في قذيفة اتحاد الصناعات في الجذر من إسبانيا. To boot into Fedora 12, I simply invoke grub.efi from the EFI shell. التمهيد في فيدورا 12 ، وأنا مجرد الاحتجاج grub.efi من قذيفة اتحاد الصناعات.
I set up the following directory structure in the ESP: أنا إنشاء بنية الدليل التالي في إسبانيا :
# 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
The tools directory contains standalone versions of many of the EFI shell built-ins together with some additional utilities such as diskpart , efichk and efifmt are Microsoft utiliites. الدليل يحتوي على أدوات الإصدارات مستقل لكثير من قذيفة اتحاد الصناعات بنيت الإضافية جنبا إلى جنب مع بعض المرافق الإضافية مثل efichk diskpart ، وefifmt هي مايكروسوفت utiliites.
When you EFI boot into Fedora 12, an extra subdirectory appears under /sys/firmware to contain EFI-ralted information. عند التمهيد في اتحاد الصناعات فيدورا 12 ، فرعيا اضافية يظهر تحت / تميز الكلية / الثابتة لاحتواء اتحاد الصناعات المعلومات ralted. Here is what Fedora 12 reported in /sys/firmware/efi/systab هنا هو ما ورد في فيدورا 12 / تميز الكلية / الثابتة / اتحاد الصناعات / systab
[root@ultra efi]# cat /sys/firmware/efi/systab MPS=0x0 ACPI20=0x0 ACPI=0x7fefd000 SMBIOS=0x7fdf2f98 HCDP=0x0 BOOTINFO=0x0 UGA=0x0
The zero values for MPS and ACPI20 are obviously wrong. قيم الصفر للنواب وACPI20 من الواضح أنها خاطئة. I am unsure of BOOTINFO and HCDP. وأنا متأكد من BOOTINFO وHCDP. This indicates a problem with the EFI implementation in the DX48BT2 BIOS rather than Fedora 12. هذا يشير إلى وجود مشكلة مع اتحاد الصناعات في تنفيذ السير DX48BT2 فيدورا بدلا من 12. Here is what is in this file when Fedora 12 is booted from DUET. هنا هو ما هو موجود في هذا الملف عندما يتم تمهيد فيدورا 12 من ديو.
MPS=0x7e8a2000 ACPI20=0x7e8a5000 ACPI=0x7e8a4000 SMBIOS=0x7e8a3000 HCDP=0x0 BOOTINFO=0x0 UGA=0x0
Here is a listing of /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
The value in BootCurrent-8be4df61-93ca-11d2-aa0d-00e098032b8c is FFFF which is an obviously invalid setting. القيمة في BootCurrent - 8be4df61 - 93ca - 11d2 - aa0d - 00e098032b8c هو FFFF وهو تحديد واضح غير صالحة. No other Boot* global variables are made available to Fedora 12 which is strange. أي الحذاء الأخرى * المتغيرات العالمية متاحة للفيدورا 12 الذي غريب. Again this indicates a poor EFI implementation in the DX48BT2 BIOS rather than a problem with Fedora 12. مرة اخرى هذا يدل على سوء التنفيذ اتحاد الصناعات في السير DX48BT2 بدلا من مشكلة مع فيدورا 12. All the pre-OS space EFI global variables defined by the UEFI specification are supposed to be made available to the operating system. كل ما قبل التشغيل اتحاد الصناعات الفضائية المتغيرات العالمية التي تحددها مواصفات UEFI من المفترض أن تكون متاحة للنظام التشغيل.
Here is a listing of this same directory when Fedora 12 is booted using DUET. هنا هي قائمة من هذا الدليل نفسه فيدورا 12 عندما يتم تمهيد باستخدام ديو.
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
Note the additional Boot* global variables and the TimeOut global variable per the UEFI specification. علما التمهيد إضافية * المتغيرات العالمية والمتغيرات العالمية مهلة لكل مواصفات UEFI. If I had set BootNext in the DUET bootmanager it would also have been displayed here. إذا كنت قد حددت BootNext في bootmanager دويتو ومن شأنه أيضا أن تم عرضها هنا. If you come from the Microsoft Windows x86-64 world, some of these names for global variables may be unfamilar to you as Microsoft in their infinite wisdom changed the names. إذا كنت تأتي من مايكروسوفت ويندوز x86 - 64 العالم ، وبعض من هذه الأسماء للمتغيرات العالمية قد تكون unfamilar لكم ومايكروسوفت في حكمة بلا حدود تغيير أسماء. In Microsoft's BCD (Boot Configuration Data), for example, BootOrder is called displayorder and BootNext is called bootsequence . في مايكروسوفت قاعدي (بيانات تكوين التمهيد) ، على سبيل المثال ، BootOrder يسمى displayorder وBootNext يسمى bootsequence.
Besides those issues I have described so far in this post, I ran into a number of other problems with EFI support on the DX48BT2. الى جانب تلك القضايا التي ذكرتها حتى الآن في هذا المنصب ، وأنا واجهت عددا من المشاكل الأخرى مع اتحاد الصناعات في دعم DX48BT2. The first problem is that the UEFI boot option on this platform is visable but totally undocumented and by all accounts Intel will not answer any questions about this feature because it is a desktop platform. المشكلة الأولى هي أن UEFI خيار التمهيد على هذا النظام واضح تماما ولكن لا يحملون وثائق وحسابات كل من شركة إنتل لن يجيب على أية أسئلة حول هذه الميزة لأنها هي عبارة عن منصة سطح المكتب. This will have to change as 64-bit operating systems become more common in households and hard disks greater that 2 Gib become commodity items. هذا وسوف تضطر إلى تغيير في أنظمة تشغيل 64 بت تصبح أكثر شيوعا في الأسر والأقراص الثابتة أكبر 2 غب أن تصبح البنود السلعية.
Another problem is that when you are in EFI boot mode and the BIOS detects an EFI bootloader such as /EFI/BOOT/BOOTX86.EFI , a menu option “[Internal Shell]” is displayed along with other bootable drives when you press the F10 key to select which “drive” to boot off. مشكلة أخرى هي أنه عندما كنت في اتحاد الصناعات ووضع التمهيد السير يكشف عن اتحاد الصناعات بووتلوأدر] مثل / EFI/BOOT/BOOTX86.EFI ، وهو خيار القائمة "[الداخلية شل]" يتم عرضها جنبا إلى جنب مع غيرها من محركات للتمهيد عند الضغط على F10 المفتاح لتحديد الذي "حملة" لتمهيد قبالة. However, if you select this option the BIOS simply clears the screen and locks up the system. ومع ذلك ، إذا قمت بتحديد هذا الخيار السير ببساطة مسح الشاشة وحتى أقفال النظام. You have to reboot your system to recover from this. لديك لإعادة تشغيل النظام الخاص بك لاسترداد من هذا. I can only assume that this option was intended to load an EFI shell or EFI boot manager but was never actually implemented. ولا يسعني إلا أن نفترض أن هذا الخيار كان المقصود لتحميل قذيفة اتحاد الصناعات أو التمهيد مدير اتحاد الصناعات ولكن لم تنفذ فعليا. Some of the code is obviously there as it detects EFI bootloaders. بعض من رمز من الواضح أن هناك كما يكشف اتحاد الصناعات bootloaders.
Finally, if you turn off EFI boot in the BIOS setup and thus revert to legacy boot, the boot list displayed by F10 still displays any custom EFI boot options created using efibootmgr less the [Internal Shell] boot option – except now you cannot boot any of the options in the boot list. وأخيرا ، إذا قمت بإيقاف اتحاد الصناعات التمهيد في الإعداد السير ، وبالتالي العودة إلى التمهيد تراث ، وقائمة التمهيد عرضها بواسطة F10 مازال يعرض بأي عرف اتحاد الصناعات خيارات التشغيل التي تم إنشاؤها باستخدام efibootmgr أقل من [الداخلية شل] الخيار التمهيد -- باستثناء الآن لم تتمكن أي الحذاء من الخيارات في قائمة التمهيد. The only way to eliminate these entries from the boot list is to EFI boot back into Fedora 12 and use efibootmgr to delete these entries. الطريقة الوحيدة للقضاء على هذه الإدخالات من قائمة التمهيد لاتحاد الصناعات التمهيد إلى فيدورا 12 واستخدام efibootmgr لحذف هذه الإدخالات.
I have read a number of postings in various forums regarding Intel's EFI support on desktop motherboards. لقد قرأت عددا من التعيينات في مختلف المحافل فيما يتعلق إنتل على دعم اتحاد الصناعات اللوحات سطح المكتب. I generally agree with the sentiments expressed – it is quite buggy and not ready for prime time use. عموما أنا أتفق مع المشاعر التي أعرب عنها -- هو الى حد بعيد عربات التي تجرها الدواب ، وغير جاهز للاستخدام مرة رئيس الوزراء. It does indeed boot a EFI bootloader off a GPT disk but that is about all it does. انها فعلا التمهيد لاتحاد الصناعات بووتلوأدر] قبالة قرص التعريفة التفضيلية العامة ولكن هذا هو كل ما تفعله. Given that Intel has over 10 years experience with EFI, this is quite surprising. نظرا إلى أن شركة إنتل أكثر من 10 عاما من الخبرة مع اتحاد الصناعات ، وهذا هو المستغرب تماما. At a minimum they need to provide a proper EFI boot configuration manager and a platform setup utility for creating EFI global variables. كحد أدنى التي يحتاجونها لتوفير سليم مدير اتحاد الصناعات تكوين التمهيد والإعداد المساعدة منصة لخلق اتحاد الصناعات المتغيرات العالمية.
The Fedora project should work to enable EFI Booting a x86-64 distribution DVD by providing a boot loader at \EFI\BOOT\BOOTX64.CONF . مشروع فيدورا ينبغي العمل من أجل تمكين اتحاد الصناعات والركل x86 - 64 توزيع دي في دي من خلال توفير محمل التمهيد في \ اتحاد الصناعات \ الحذاء \ BOOTX64.CONF. It is not sufficient in my opinion to use legacy mode to create an installation which is then capable of being EFI booted. انها ليست كافية في رأيي لاستخدام وضع تركة لإنشاء هذا المصنع الذي يقع ثم قابلا للتمهيد اتحاد الصناعات. I understand the difficulty of supporting both MBR and GPT on a single DVD but the problem is not insurmountable. وأنا أفهم مدى صعوبة حصر كل دعم والتعريفة التفضيلية العامة على دي في دي واحد ولكن المشكلة ليست مستعصية على الحل. If this were done, there would be no need for efiboot.img and efidisk.img . إذا تم ذلك ، لن تكون هناك حاجة لefiboot.img وefidisk.img.
Well, that's about all for now on this issue. حسنا ، ذلك حول كل الآن بشأن هذه المسألة. I hope this post will be of some help to others who are considering switching to EFI booting Fedora 12. آمل أن يكون هذا المنصب سيكون من بعض المساعدة للآخرين الذين يدرسون التحول إلى اتحاد الصناعات تشغيل فيدورا 12.





















