1

I have dual boot system with Windows 10 and Arch linux (with grub) installed on Thinkpad X1 Carbon gen5. I've updated BIOS from version 1.22 to 1.34.

Before Update I had several options in Boot Menu including Windows Boot Manager and grub. Now I don't have these options and only SSD name (selecting this force laptop to boot Win 10) and Network Boot options.

I've tried all the options:

  • Security -> Secure boot -> [Disabled]
  • Startup -> UEFI/legacy -> [UEFI only]
  • Startup -> UEFI/legacy -> CMS -> [Disabled] (also tried with enabled)
  • OS Optimized Defaults -> [Disabled]

There isn't any change in Boot menu.

What should I do to force BIOS to list all the options including grub?

UPD. I've downgraded to 1.23 (downgrade to 1.22 is impossible) and there is same lack of options in boot menu.

2

3 Answers 3

5

Your UEFI upgrade has probably reset the NVRAM settings, which on UEFI systems also include the boot configuration for installed operating systems. Not all the boot menu items are detected on-the-fly at boot time: instead, the boot items for installed operating systes are stored in UEFI NVRAM at OS installation time.

I'd suggest first booting from Windows 10 installation media. First select your language/keyboard and any other preferences, then select "Repair your computer" when the choice comes up. It should automatically recreate the Windows boot menu option.

Then you can boot from any UEFI-capable Linux Live media, verify that the Arch GRUB bootloader is still present in the ESP partition, and use the efibootmgr command to add a boot menu item for it.

Assuming that your EFI System Partition is the first partition on /dev/sda, the necessary efibootmgr command line should be similar to this:

# efibootmgr -c -d /dev/sda -p 1 -l \\EFI\\arch\\grubx64.efi -L "Arch Linux"

Note the Windows-style path name for the bootloader, with doubled backslashes since a backslash is a special escape character for the shell. For the boot menu label (the -L option), you can write anything you want instead of "Arch Linux", if you wish.

3
  • You are right. That was the source of the problem.
    – petRUShka
    Oct 13, 2018 at 12:14
  • 1
    I've found list of software to edit UEFI boot menu: superuser.com/questions/1247300/… And install one of them in Windows and have edited that menu.
    – petRUShka
    Oct 13, 2018 at 12:15
  • So you don't need to have any extra bootable usb, you can do it from OEM Windows you have.
    – petRUShka
    Oct 13, 2018 at 13:22
1

You should boot into the Arch installation medium, mount all your partitions (boot, efi, root,...) into /mnt like when you are installing Arch. Then do arch-chroot /mnt and reinstall Grub in UEFI mode like described on Grub - ArchWiki.

1

I had almost exactly the same problem. After updating my BIOS today, on a Lenovo laptop (Legion Y7000, if it helps), which had dual-boot on, I could no longer see GRUB pop up when I started the laptop. It would directly go to Windows Boot Manager and start up my Windows.

I was in absolute panic mode, but fortunately, my problem had a simple solution. The update had switched the boot priority from ubuntu -> windows boot manager, to windows boot manager -> ubuntu. I switched it back from UEFI settings, and things were back to normal! In case you don't know how to access UEFI settings, go to:

Settings -> Update & Security -> Recovery -> Advanced Startup -> Restart Now

This will take you out of windows, to a blue-ish menu. Then go to:

Troubleshoot -> Advanced Options -> UEFI Firmware Settings

Which will finally take you to the BIOS, where you can go to the boot tab to change boot priority.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .