Menu

After update computer boots to windows rather than to rEFInd

2015-12-21
2016-01-19
  • Amnon Dalcher

    Amnon Dalcher - 2015-12-21

    After upgrading to rEFInd 0.10.1, my Toshiba C55-A boots directly into Windows 8.5, rather than to rEFInd. I am able to get to rEFInd by going to the shutdown menu, pressing "shift" and "restart" ->"use a device"-> rEFInd. When I've updated I answered "yes" to the question "Do you want to install rEFInd" to the ESP.
    I've tried to use "sudo dpkg-reconfigure refind", and also to uninstall and reinstall rEFInd. I've also used "sudo refind-install". The messages suggest that the install is working fine:


    ShimSource is none
    Installing rEFInd on Linux....
    ESP was found at /boot/efi using vfat
    Found rEFInd installation in /boot/efi/EFI/refind; upgrading it.
    Installing driver for ext4 (ext4_x64.efi)
    Copied rEFInd binary files

    Notice: Backed up existing icons directory as icons-backup.
    Existing refind.conf file found; copying sample file as refind.conf-sample
    to avoid overwriting your customizations.

    Installing it!
    rEFInd has been set as the default boot manager.
    Existing //boot/refind_linux.conf found; not overwriting.

    Installation has completed successfully.


    However, when I try to logon, the system again goes directly into windows. Trying refind-install, results in the same message, and the same failure.
    I have also tried to use EasyUEFI tool, but it does not seem to be able to change the boot order.

    How do I get my computer to boot into rEFInd?

     

    Last edit: Amnon Dalcher 2015-12-21
  • Roderick W. Smith

    This should have worked; however, there are buggy EFIs out there that get confused, forget, or ignore their boot order information. You might be able to learn more by viewing the EFI boot information with efibootmgr -v. For instance, on one of my computers, I see:

    $ sudo efibootmgr -v
    BootCurrent: 0000
    Timeout: 0 seconds
    BootOrder: 0000,0007,0003,0001,2001
    Boot0000* rEFInd Boot Manager   HD(2,1f4800,82000,5f6b4992-fcfe-4a2c-9e67-98b0a30dfe7d)File(\EFI\refind\refind_x64.efi)
    Boot0001* Lenovo Recovery System    HD(3,276800,1f4000,de3b7563-97f5-48c6-ab7f-2f5d6d57c644)File(\EFI\Microsoft\Boot\LrsBootMgr.efi)RC
    Boot0003* ubuntu    HD(2,1f4800,82000,5f6b4992-fcfe-4a2c-9e67-98b0a30dfe7d)File(\EFI\ubuntu\grubx64.efi)RC
    Boot0007* Windows Boot Manager  HD(2,1f4800,82000,5f6b4992-fcfe-4a2c-9e67-98b0a30dfe7d)File(\EFI\Microsoft\Boot\bootmgfw.efi)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.}....................
    Boot2001* EFI USB Device    RC
    

    You should see a BootOrder line that shows one or more entries, with number that corresponds to rEFInd being first. For instance, mine shows 0000 as first, and my Boot0000 line does point to rEFInd. If your BootOrder shows something else coming before rEFInd, you can adjust the BootOrder with the -o option to efibootmgr, as in:

     sudo efibootmgr -o 0000,0003,0001
    

    You can then check again with efibootmgr -v and then reboot to see if it "sticks." Another possible problem is that there is no appropriate rEFInd entry. In this case you may need to create it yourself, as described in the manual installation instructions. If this doesn't work, then your firmware may be messed up, either completely (which seems unlikely because you say it worked before) or temporarily. A temporary problem will sometimes clear itself, or it can be made to clear up by removing unnecessary boot entries with efibootmgr's -b option, as in:

    sudo efibootmgr -b 0007 -B
    

    Yet another possibility is that you're running into Secure Boot problems. The upgrade might have upgraded rEFInd but done so while bypassing Shim. If so, you'll need to re-create the boot entry manually, but do so via Shim. See the rEFInd Secure Boot instructions for details.

    In a worst-case scenario, you may need to reset all your firmware options to their defaults and then re-register rEFInd with the firmware.

     
  • Amnon Dalcher

    Amnon Dalcher - 2015-12-22

    1) I've tried to use efibootmgr to change the boot order. Running efibootmgr with the -v option suggested that the boot order was changed. However, the system again booted to windows. Running efibootmgr -v showed the the boot order was not changed at all.

    2) Secure boot is off . So I guess there is no point in trying to re-create the boot entry manually. (or is there?)

    3) Would you please give a reference to firmware option reset?

    Thanks

     
  • Roderick W. Smith

    How to reset the firmware varies from one firmware to another, so I can't be specific. Usually there's an option in the user interface to reset all the options to the default, so look for that.

    Another possibility occurs to me: You could try setting the boot order from Windows. Occasionally this works, particularly if it's Windows, rather than the EFI, that's resetting the boot order. The Windows bcdedit command can do this, as described in the rEFInd Windows installation instructions -- but you needn't do everything in that procedure, just step #1 and the bcdedit command in step #9. The third-party EasyUEFI tool might also work and is easier to use than bcdedit.

     
  • Amnon Dalcher

    Amnon Dalcher - 2015-12-22

    When I've tried to launch bcdedit (either as an administrator or a regular user) a terminal windows pops up, but it closes immediately. As I said in my first post, EasyUEFI didn't work.
    Question: What do I have to do after reseting the firmware in order to get back to the dual boot system?

     
  • Roderick W. Smith

    You normally launch bcdedit in Windows from an Administrator Command Prompt window -- that is, you should launch Command Prompt as Administrator, then use it to type the bcdedit command, including its options. You should not try to launch bcdedit using GUI program-launching tools.

    If you reset the firmware to the defaults and that causes the boot order to go away, you can use any of the many tools in the firmware, an EFI shell, or an OS to add entries back. OS-based tools will of course require booting to an OS. This can (sometimes) be done by picking a boot loader using the firmware user interface, or you can use rEFInd on a USB flash drive to do the job. Sorry I can't be more specific about this; too much of it relies on implementation-specific details that vary from one EFI to another.

     

Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.