Bug 743972

Summary: Anaconda can not detect UEFI system well
Product: [Fedora] Fedora Reporter: Liang Suilong <liangsuilong>
Component: anacondaAssignee: Anaconda Maintenance Team <anaconda-maint-list>
Status: CLOSED DUPLICATE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 16CC: anaconda-maint-list, awilliam, jonathan, mads, vanmeeuwen+fedora
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-10-06 16:16:37 EDT Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Attachments:
Description Flags
anaconda log on fedora 16 livecd
none
program log created by Fedora 16's Anaconda
none
storage log created by Fedora 16's Anaconda
none
GPT on Fedora 15
none
Partition Interface on Fedora 16 Anaconda
none
dmesg log on Fedora 16
none
dmesg log on Fedora 15 none

Description Liang Suilong 2011-10-06 11:49:32 EDT
Created attachment 526737 [details]
anaconda log on fedora 16 livecd

Description of problem:

I have a Lenovo IdeaPad S205. The notebook is using UEFI-only system. I downloaded Fedora 16 Beta RC4 Desktop LiveCD and try to install it. The installation wizard goes into partition tools. Anaconda is believing that S205 is BIOS system. I must create a BIOS boot partition and Anaconda does not allow me to create EFI system partition. So I choose system recommended solution, a solution based on BIOS system. The following installation process is quit smooth. After installation, I reboot my laptop. UEFI skips my HDD and tries to boot another device.

Version-Release number of selected component (if applicable):

anaconda-16.20-1.fc16

How reproducible:

Try to fresh install Fedora 16 to a UEFI system.

Steps to Reproduce:

1. Using liveusb-creator to create a Fedora LiveUSB Installer. Or using this command cat Fedora-16-Beta-x86_64-Live-Desktop.iso > /dev/sdb if your USB device is /dev/sdb.

2. Plug the USB drive into USB port.

3. Power on your PC and boot USB drive first.

4. Run Anaconda to install Fedora 16 into your hard disk.

5. Reboot your PC after installation.
  
Actual results:

UEFI will not boot HDD and try to boot another device.

Expected results:

UEFI will boot HDD and jump into GRUB 2. After booting, Fedora should run first boot service for users.

Additional info:

The attachments contains three logs and two screenshots. A screenshot is partition wizard on Fedora 16's Anaconda. The other is Fedora 15's partition table.

In fact, Fedora 15 supports UEFI well, my screenshot can approve it. And Ubuntu 11.10 supports UEFI well too. 

Here is my smolt page: http://www.smolts.org/client/show_all/pub_ad55a631-5c27-4b3f-a3ed-72f4d4a2403e
Comment 1 Liang Suilong 2011-10-06 11:50:37 EDT
Created attachment 526739 [details]
program log created by Fedora 16's Anaconda
Comment 2 Liang Suilong 2011-10-06 11:51:36 EDT
Created attachment 526743 [details]
storage log created by Fedora 16's Anaconda
Comment 3 Liang Suilong 2011-10-06 11:53:08 EDT
Created attachment 526744 [details]
GPT on Fedora 15
Comment 4 Liang Suilong 2011-10-06 11:54:11 EDT
Created attachment 526745 [details]
Partition Interface on Fedora 16 Anaconda
Comment 5 David Lehman 2011-10-06 12:41:05 EDT
Please run the command 'dmesg > /tmp/dmesg' and then attach /tmp/dmesg to this bug
report as a plain text file. Thanks.
Comment 6 Liang Suilong 2011-10-06 13:50:38 EDT
Created attachment 526759 [details]
dmesg log on Fedora 16

Here is dmesg log on Fedora 16.
Comment 7 Liang Suilong 2011-10-06 13:52:18 EDT
Created attachment 526761 [details]
dmesg log on Fedora 15

Here is dmesg log on Fedora 15.
Comment 8 Brian Lane 2011-10-06 14:20:32 EDT
Could you try preparing your USB media using livecd-iso-to-disk --efi --format instead? cat or dd of a .iso will not work for EFI on USB. Use the latest version of livecd-tools from updates-testing.
Comment 9 Liang Suilong 2011-10-06 14:45:50 EDT
(In reply to comment #8)
> Could you try preparing your USB media using livecd-iso-to-disk --efi --format
> instead? cat or dd of a .iso will not work for EFI on USB. Use the latest
> version of livecd-tools from updates-testing.

Thank you. I am using Fedora 15 now. Livecd-iso-to-disk script seems not to support EFI booting.

Here is a log:

[root@fedora-laptop fedora]# livecd-iso-to-disk --format --efi Fedora-16-Beta-x86_64-Live-Desktop.iso /dev/sdb1
Verifying image...
/home/fedora/Fedora-16-Beta-x86_64-Live-Desktop.iso:   69870a28e4a9090ca4869c10b57b5118
Fragment sums: c33d26465fda74cff77fe9f48827f2bb5aef7b43b2113662e2a59cde31b4
Fragment count: 20
Press [Esc] to abort check.
Checking: 100.0%

The media check is complete, the result is: PASS.

It is OK to use this media.
WARNING: THIS WILL DESTROY ANY DATA ON /dev/sdb!!!
Press Enter to continue or ctrl-c to abort

wipefs: WARNING: /dev/sdb: appears to contain 'dos' partition table
Waiting for devices to settle...
mkdosfs 3.0.11 (24 Dec 2010)
MBR appears to be blank.
Do you want to replace the MBR on this device?
Press Enter to continue or ctrl-c to abort

ERROR: This live image does not support EFI booting
Cleaning up to exit...
Comment 10 Liang Suilong 2011-10-06 15:44:50 EDT
All the ISO contents are written into USB driver except bootloader. So my
laptop can not boot this USB drive. My USB drive is Apacer HT203 2GB, USB 2.0
standard. 

In my opinion, It is not related to what I use to create a LiveUSB drive. I use
Fedora LiveUSB Creator to create Fedora 15 LiveUSB. And it works well and
Anaconda for Fedora 15 can detect UEFI weill. However Fedora 16 can not do it
now. The problem is not that which partition table we used to create LiveUSB.
We just need that the system is able to boot LiveUSB for installation and test.
The biggest problem is that   Anaconda should have handled UEFI system on
Fedora 16 and create GPT for it. Unluckily, Anaconda for Fedora 16 fails. So it
should be marked as a bug.
Comment 11 Brian Lane 2011-10-06 16:16:37 EDT
This is related to the grub to grub2 switch, the Beta live iso isn't EFI capable because of a missing grub package.

*** This bug has been marked as a duplicate of bug 735023 ***
Comment 12 Liang Suilong 2011-10-07 03:19:05 EDT
(In reply to comment #11)
> This is related to the grub to grub2 switch, the Beta live iso isn't EFI
> capable because of a missing grub package.
> 
> *** This bug has been marked as a duplicate of bug 735023 ***

I do not think https://bugzilla.redhat.com/show_bug.cgi?id=743972 is a duplicate of https://bugzilla.redhat.com/show_bug.cgi?id=735031 . I mean that  anaconda does not detect UEFI well so that installation wizard can not give me a correct partition table. The last result is that GRUB 2 is not installed correctly. Though pjones adds a grub2-efi for UEFI system, the bug will still exist if anaconda or partition tool is not fixed.
Comment 13 Adam Williamson 2011-10-07 11:47:12 EDT
The F16 live images cannot possibly boot via EFI: they do not have the necessary files, you can check this yourself very easily. Your system is not EFI-only, there are no EFI-only systems in the wild. It has BIOS compatibility, and when you are booting a Fedora 16 live image, it is using BIOS compatibility mode and you're doing a boring old BIOS install.

F16 does not use grub2 for EFI, it uses grub-legacy. But as of Beta the only way you can actually do an EFI install of F16 is with one of the 'traditional' installer images: DVD iso, netinst iso, or efidisk.img.
Comment 14 David Lehman 2011-10-07 13:07:58 EDT
(In reply to comment #12)
> I do not think https://bugzilla.redhat.com/show_bug.cgi?id=743972 is a
> duplicate of https://bugzilla.redhat.com/show_bug.cgi?id=735031 . I mean that 
> anaconda does not detect UEFI well so that installation wizard can not give me

The code anaconda uses to detect EFI has not changed since July 2007. It is not broken. If your system boots in BIOS emulation mode it does not appear to be an EFI system after bootup. This is why you need install media that can boot via EFI.