GRUB disappeared from Boot Menu after UEFI (BIOS) upgrade on Thinkpad X1 Carbon gen5

8,565

Solution 1

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.

Solution 2

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.

Share:
8,565

Related videos on Youtube

petRUShka
Author by

petRUShka

Updated on September 18, 2022

Comments

  • petRUShka
    petRUShka over 1 year

    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.

  • petRUShka
    petRUShka over 5 years
    You are right. That was the source of the problem.
  • petRUShka
    petRUShka over 5 years
    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
    petRUShka over 5 years
    So you don't need to have any extra bootable usb, you can do it from OEM Windows you have.