You are not logged in.

#1 2013-06-02 14:40:06

tallmtt
Member
Registered: 2009-08-14
Posts: 13

UEFI - trouble getting any boot menu at all [SOLVED]

I am really annoyed by this EFI stuff ... missing plain old school bios and grub2 right now!

I have a new desktop with Windows 8 on it. I want to keep my windows - so have partitioned and installed Arch. Now, my issue is to get the bootmanager to see it to boot.

My pertinent partitions are:

/dev/sda2   EFI partition - this is the one Windows came with/on - I did NOT create it as I want to keep the ability to boot Windows 8
/dev/sda3   Windows 8
/dev/sda4   Windows 8 stuff
/dev/sda6   Arch / - formatted as ext4 and fully installed

I am using EFI USB to boot/install. I can chroot and did a full arch 64 install.

I have tried grub efi version, rEFInd, and EFIstub with no luck. When I remove the USB and boot it goes straight into windows. The more I learn, the more I like the rEFInd setup.

I followed: https://wiki.archlinux.org/index.php/UE … ing_rEFInd with no luck.

Also of note I have tried mounting /dev/sda2 to both /boot and /boot/EFI and neither worked for me.

efibootmgr shows me Windows, my USB, rEFInd, and my harddrive all as possible boot options, but again with a restart it goes straight into Windows 8 sad

Any ideas? This is all so frustrating.

Last edited by tallmtt (2013-06-03 22:16:57)

Offline

#2 2013-06-02 19:29:38

srs5694
Member
From: Woonsocket, RI
Registered: 2012-11-06
Posts: 719
Website

Re: UEFI - trouble getting any boot menu at all [SOLVED]

You must provide more information. Helpful details could include:

  • The output of "efibootmgr -v", typed as root from a Linux emergency disc booted in EFI mode.

  • The paths to all .efi files on the ESP (your /dev/sda2). The command 'ls -l `find /boot/efi -name "*.efi"`' will show this, if the ESP is mounted at /boot/efi.

Offline

#3 2013-06-02 20:59:50

tallmtt
Member
Registered: 2009-08-14
Posts: 13

Re: UEFI - trouble getting any boot menu at all [SOLVED]

Thank you for your prompt reply.

Here are the outputs of those commands.

$efibootmgr -v:
BootCurrent: 0004
Timeout: 2 seconds
BootOrder: 0004,0002,0000,0003
Boot0000  Windows Boot Manager	Vendor(99e275e7-75a0-4b37-a2e6-c5385e6c00cb,)WINDOWS.........x...B.C.D.O.B.J.E.C.T.=.{.9.d.e.a.8.6.2.c.-.5.c.d.d.-.4.e.7.0.-.a.c.c.1.-.f.3.2.b.3.4.4.d.4.7.9.5.}....................
Boot0002* UEFI: ST31000524AS	ACPI(a0341d0,0)PCI(11,0)03120a000000ffff0000HD(2,c8800,96000,e145f3d7-6f3f-4fd7-bfdd-cd367e5ac5c4)AMBO
Boot0003  rEFInd	Vendor(99e275e7-75a0-4b37-a2e6-c5385e6c00cb,)
Boot0004* UEFI: USB 2.0 Flash Disk 1100	ACPI(a0341d0,0)PCI(13,2)USB(2,0)AMBO

and

$ls -l `find /boot/efi -name "*.efi"`
-rwxr-xr-x 1 root root 1354472 Sep 20  2012 /mnt/boot/EFI/Boot/bootx64.efi*
-rwxr-xr-x 1 root root 1354472 Sep 20  2012 /mnt/boot/EFI/Microsoft/Boot/bootmgfw.efi*
-rwxr-xr-x 1 root root 1350888 Sep 20  2012 /mnt/boot/EFI/Microsoft/Boot/bootmgr.efi*
-rwxr-xr-x 1 root root 1263856 Jul 26  2012 /mnt/boot/EFI/Microsoft/Boot/memtest.efi*
-rwxr-xr-x 1 root root  159520 Jun  2 09:48 /mnt/boot/EFI/refind/refind_x64.efi*
-rwxr-xr-x 1 root root   31808 Jun  2 09:52 /mnt/boot/EFI/tools/drivers/ext2_x64.efi*
-rwxr-xr-x 1 root root   32224 Jun  2 09:52 /mnt/boot/EFI/tools/drivers/ext4_x64.efi*
-rwxr-xr-x 1 root root   34816 Jun  2 09:52 /mnt/boot/EFI/tools/drivers/hfs_x64.efi*
-rwxr-xr-x 1 root root   31872 Jun  2 09:52 /mnt/boot/EFI/tools/drivers/iso9660_x64.efi*
-rwxr-xr-x 1 root root   35040 Jun  2 09:52 /mnt/boot/EFI/tools/drivers/reiserfs_x64.efi*

I did not chroot in to do this one, but just mounted the EFI partition (/dev/sda2) at /mnt/boot as described in the rEFInd section of the link I had in my original post

Offline

#4 2013-06-02 21:12:33

WonderWoofy
Member
From: Los Gatos, CA
Registered: 2012-05-19
Posts: 8,414

Re: UEFI - trouble getting any boot menu at all [SOLVED]

Take a look at your rEFInd entry, now look at mine:

Boot0015* rEFInd Boot Manager	HD(1,800,200000,664909aa-c06a-45cb-b67c-9e533c8d057f)File(\EFI\rEFInd\rEFInd_x64.efi)

Not only is your entry not right at all, but the asterisks next to the "Boot0015*" in my entry means that it is active.  So yours is not active, nor is it right.  But I wouldn't be surprised if the inactive state might be a result of the incorrectness of your entry.

What is the exact efibootmgr command you are trying to use?

Offline

#5 2013-06-02 21:17:49

tallmtt
Member
Registered: 2009-08-14
Posts: 13

Re: UEFI - trouble getting any boot menu at all [SOLVED]

I agree with you - that asterisk must mean active or not .... I tried searching for a way to change it, but was unsuccessful hmm

I did this:

 # modprobe efivars
 # efibootmgr -c -w -d /dev/sda -p 2 -l '\EFI\refind\refind_x64.efi' -L "rEFInd" 

I got those commands from this section of the wiki: https://wiki.archlinux.org/index.php/UE … ing_rEFInd

Offline

#6 2013-06-02 21:31:17

WonderWoofy
Member
From: Los Gatos, CA
Registered: 2012-05-19
Posts: 8,414

Re: UEFI - trouble getting any boot menu at all [SOLVED]

So what is on \EFI\boot\bootx64.efi?  Because that is the "default" entry for the ESP.  If it is set to be booting from the disk itself, that is what it will boot.  So if that is the windows boot thing, then windows it is.  If you back that file up, then copy refind to that spot, then does it bring up the refind menu?

Edit: What I am trying to say is that you are likely going to use rEFInd to boot windows anyway, so why not just put that in the default spot then create a windows entry in rEFInd.  That command shown *should* work, but there have been bugs with efibootmgr and the latest kernels.  But for most people it simply doens't create an entry at all.  I have never seen it not fully create the entry itself, but still create something. 

You do have the alternative solution of using bcfg in the UEFI Shell to create the entry as well.  I have never used it myself, but if you boot into the shell you can check it out and get help with how to use it.  That is a pretty reliable solution.

If you are okay with a test only menu, I like gummiboot.  Installing it from the repos though will actually copy the gummiboot.efi application to \EFI\gummiboot\gummiboot.efi as well as \EFI\boot\bootx64.efi.  Then it will also create an efibootmgr entry.  Though I don't like the fact that it can potentially overwrite what is already at \EFI\boot\bootx64.efi, installing it might tell you if your efibootmgr is working correctly since it does it automagically.

Last edited by WonderWoofy (2013-06-02 21:37:34)

Offline

#7 2013-06-03 01:09:49

srs5694
Member
From: Woonsocket, RI
Registered: 2012-11-06
Posts: 719
Website

Re: UEFI - trouble getting any boot menu at all [SOLVED]

I agree with WonderWoofy's latest post. If you want to place rEFInd as the default/fallback boot loader, you may need to remove the other existing entries from the NVRAM. You can do this with "efibootmgr -b 0 -B" to delete entry #0, and so on for the others. I'll add that I've seen a few reports of apparently-truncated entries reported by efibootmgr (and presumably created by it, too, although that's not 100% clear). Also, the bcfg command is described in the Arch wiki. Note that this command is available only in the EFI version 2 shell, which some computers can't run.

Offline

#8 2013-06-03 01:19:17

WonderWoofy
Member
From: Los Gatos, CA
Registered: 2012-05-19
Posts: 8,414

Re: UEFI - trouble getting any boot menu at all [SOLVED]

srs5694 wrote:

I'll add that I've seen a few reports of apparently-truncated entries reported by efibootmgr (and presumably created by it, too, although that's not 100% clear).

This was happening to me with my original bios that came with my Thinkpad E430.  Theridikulusrat confirmed that this was happening on his from India as well (I am from the US).  In both our cases, we were using efibootmgr.  But these two instances with the E430s it was occuring not in the path to the *.efi file, but rather when a direct efibootmgr entry was created, the kernel command line arguments were wrong.

Offline

#9 2013-06-03 14:22:48

tallmtt
Member
Registered: 2009-08-14
Posts: 13

Re: UEFI - trouble getting any boot menu at all [SOLVED]

Ok, I will try this later pending warnings from any of you smile

1) I will back up bootx64.efi elsewhere
2) I will move the refind folder contents to the boot folder (you can see my file structure above)
3) Then I will repeat the efibootmgr command and see what I get

- Should I change the refind name to bootx64.efi?

I'd prefer to stay away from gummyboot - especially since I do not understand this EFI stuff so well hmm

I have booted EFI vesion 2 shell with my USB and messed with the bcfg command a little but didn't venture too far into the wilderness!

Offline

#10 2013-06-03 15:02:49

WonderWoofy
Member
From: Los Gatos, CA
Registered: 2012-05-19
Posts: 8,414

Re: UEFI - trouble getting any boot menu at all [SOLVED]

You need to actually change the whole path of rEFInd.  Or rather, copy it to a second path.  So what i would do, is take \EFI\boot\bootx64.efi and copy it to \EFI\boot\bootx64.efi.bak.  Then copy \EFI\refind\refindx64.efi (or whatever it is called) and copy it to \EFI\boot\bootx64.efi.  So that in this way you still have that original bootx64.efi file in the event you want to move it back. 

You will still need the configuration files to be in \EFI\refind as well as all the other stuff like icons and whatnot, as though refind will be reading its efi application from elsewhere, it will still be looking in the defualt path for its configuration and tools and whatnot.

tallmtt wrote:

I'd prefer to stay away from gummyboot - especially since I do not understand this EFI stuff so well

I don't understand this... gummiboot is just another bootmanager.  I actually find it far simpler to set up than rEFInd, though I know that srs5694 would beg to differ.  Gummiboot doesn't have an automagic kernel/efi finder like rEFInd, and it doesn't have a graphical screen.  But you can set rEFInd to be textonly by uncommenting the configuration line... "textonly". 

If you want to try gummiboot, but don't want the automatic efibootmgr entry or the automatic copying of the efi applications to occur, you have a couple choices.  You can download the package manually, then untar it yourself in the root of your system.  This will put all the files in place, just as pacman would, but it wouldn't run the install script that does this automagic configuration.  The downside is that it won't actually be tracked by pacman.   So the other option is to edit your /etc/pacman.conf, and uncomment "NoExtract =" and then add to it "/usr/bin/gummiboot".  This way it will install the efi application files, but it won't install the tool that handles this automagic copying and efibootmgr entry that is run by the install script.  So with no tool, the install script will do nothing.

Offline

#11 2013-06-03 16:01:04

the.ridikulus.rat
Member
From: Indiana, USA
Registered: 2011-10-04
Posts: 765

Re: UEFI - trouble getting any boot menu at all [SOLVED]

srs5694 wrote:

Also, the bcfg command is described in the Arch wiki. Note that this command is available only in the EFI version 2 shell, which some computers can't run.

There is a modified UEFI Shell v2 binary that is supposed to work in UEFI pre-2.3 systems. It has been compiled by the developer of http://sourceforge.net/projects/cloverefiboot/ and can be downloaded at http://dl.dropbox.com/u/17629062/Shell2.zip . I have added this link to the wiki at https://wiki.archlinux.org/index.php/Un … rface#bcfg . I did not test this myself, but my system already supports Tianocore EDK2 ShellBinPkg binary.

Offline

#12 2013-06-03 19:01:37

srs5694
Member
From: Woonsocket, RI
Registered: 2012-11-06
Posts: 719
Website

Re: UEFI - trouble getting any boot menu at all [SOLVED]

WonderWoofy wrote:

You will still need the configuration files to be in \EFI\refind as well as all the other stuff like icons and whatnot, as though refind will be reading its efi application from elsewhere, it will still be looking in the defualt path for its configuration and tools and whatnot.

This is incorrect. rEFInd looks in the directory from which it's launched for its refind.conf file and for various subdirectories from which it loads support files (such as "icons" for icons and either "drivers" or "drivers_x64" for drivers). Furthermore, rEFInd doesn't scan its own directory for boot loaders, so if you were to copy refind_x64.efi to EFI/BOOT, any other boot loaders in EFI/BOOT would be invisible to rEFInd. Thus, when installing rEFInd as the default boot loader, it's best to rename EFI/BOOT (if it's present) to something else, rename EFI/refind to EFI/BOOT, and rename EFI/BOOT/refind_x64.efi to EFI/BOOT/bootx64.efi. This will ensure that all rEFInd's support files are where they should be.

Offline

#13 2013-06-03 22:15:51

tallmtt
Member
Registered: 2009-08-14
Posts: 13

Re: UEFI - trouble getting any boot menu at all [SOLVED]

Thank you all for your assistance - this is now SOLVED smile

Also of reference, I read: http://www.zdnet.com/the-refind-boot-lo … 000010275/ and he described similar troubles. (I am using a Gateway not HP)

I backed up my EFI/Boot directory (which held the boot_x64.efi file), and then renamed the rEFInd folder Boot.

$efibootmgr -v
BootCurrent: 0004
Timeout: 2 seconds
BootOrder: 0001,0004,0002,0000
Boot0000  Windows Boot Manager	Vendor(99e275e7-75a0-4b37-a2e6-c5385e6c00cb,)WINDOWS.........x...B.C.D.O.B.J.E.C.T.=.{.9.d.e.a.8.6.2.c.-.5.c.d.d.-.4.e.7.0.-.a.c.c.1.-.f.3.2.b.3.4.4.d.4.7.9.5.}....................
Boot0001* rEFInd	HD(2,c8800,96000,e145f3d7-6f3f-4fd7-bfdd-cd367e5ac5c4)File(\EFI\Boot\bootx64.efi)
Boot0002* UEFI: ST31000524AS	ACPI(a0341d0,0)PCI(11,0)03120a000000ffff0000HD(2,c8800,96000,e145f3d7-6f3f-4fd7-bfdd-cd367e5ac5c4)AMBO
Boot0004* UEFI: USB 2.0 Flash Disk 1100	ACPI(a0341d0,0)PCI(13,2)USB(2,0)AMBO
$ls -l `find /boot/efi -name "*.efi"`
-rwxr-xr-x 1 root root  159520 Jun  2 04:48 /boot/efi/Boot/bootx64.efi
-rwxr-xr-x 1 root root 1354472 Sep 19  2012 /boot/efi/Microsoft/Boot/bootmgfw.efi
-rwxr-xr-x 1 root root 1350888 Sep 19  2012 /boot/efi/Microsoft/Boot/bootmgr.efi
-rwxr-xr-x 1 root root 1263856 Jul 25  2012 /boot/efi/Microsoft/Boot/memtest.efi
-rwxr-xr-x 1 root root   31808 Jun  2 04:52 /boot/efi/tools/drivers/ext2_x64.efi
-rwxr-xr-x 1 root root   32224 Jun  2 04:52 /boot/efi/tools/drivers/ext4_x64.efi
-rwxr-xr-x 1 root root   34816 Jun  2 04:52 /boot/efi/tools/drivers/hfs_x64.efi
-rwxr-xr-x 1 root root   31872 Jun  2 04:52 /boot/efi/tools/drivers/iso9660_x64.efi
-rwxr-xr-x 1 root root   35040 Jun  2 04:52 /boot/efi/tools/drivers/reiserfs_x64.efi

....Now my issue is in all my craziness there are boot issues probably something with the kernel itself or a rEFInd configuration thing ... so I'm off to reinstall base and re-read wiki stuff etc .... but again, I have rEFInd and was able to pick between Windows and Linux smile Thank you again!

Last edited by tallmtt (2013-06-03 22:18:57)

Offline

#14 2013-06-10 13:34:13

tallmtt
Member
Registered: 2009-08-14
Posts: 13

Re: UEFI - trouble getting any boot menu at all [SOLVED]

As it turns out, I just needed to move my conf to the base folder where the kernel is.

Offline

Board footer

Powered by FluxBB