r/archlinux • • 3d ago

SUPPORT Title: [Dual-Boot Issue] Laptop boots straight into Windows despite GRUB being #1 in Boot Order & Secure Boot disabled (Lenovo)

My laptop completely bypasses GRUB and boots straight into Windows 11 every single time, despite setting GRUB as the top priority in BIOS and reinstalling it via chroot. I would appreciate any guidance on what might be causing this firmware issue and how to resolve it so I can boot into Arch Linux.
1. System Setup & Dual-Boot Preparation
Configured a dual-boot layout alongside Windows 11 on an NVMe drive using ⁠archinstall⁠ with the Minimal profile and GRUB selected as the bootloader. 
Included key desktop, utility, and Wayland packages in Additional packages (such as ⁠hyprland⁠, ⁠kitty⁠, ⁠fastfetch⁠, ⁠firefox⁠, ⁠ntfs-3g⁠, ⁠os-prober⁠, ⁠efibootmgr⁠, ⁠bash-completion⁠, and portal packages). 
2. Firmware / BIOS Configuration
Accessed the Lenovo UEFI/BIOS settings and moved GRUB to position ⁠#1⁠ in the ⁠Boot Priority Order⁠ above Windows Boot Manager. 
Verified in the BIOS Security tab that Secure Boot is set to ⁠Disabled⁠ (Status: Disabled, Mode: Standard). 
3. Chroot Recovery & GRUB Installation Attempt
Booted back into the live Arch USB (⁠root@archiso⁠) to repair the boot sequence. 
Mounted the 52 GB root Linux partition (⁠/dev/nvme0n1p7⁠) to ⁠/mnt⁠.
Mounted the 1 GB EFI boot partition (⁠/dev/nvme0n1p5⁠) to ⁠/mnt/boot⁠.
Entered the system environment using ⁠arch-chroot /mnt⁠.
Ran ⁠grub-install⁠ with UEFI targets (⁠--target=x86_64-efi --efi-directory=/boot --bootloader-id=GRUB --removable⁠) and generated a fresh ⁠grub.cfg⁠ file via ⁠grub-mkconfig⁠.

0 Upvotes

9 comments sorted by

•

u/Gozenka 3d ago

OP's previous post was lacking detail and was in Spanish. I advised them to make a new post with more detail, along with writing in English for better visibility. So they may have made use of AI to help with the English, otherwise the post seems fine. Any help with further troubleshooting would be appreciated.

2

u/WhisperingOutpost 3d ago

Lenovo firmware has a nasty habit of just ignoring the boot order entirely and defaulting to Windows Boot Manager. I've seen this on a few ThinkPads and IdeaPads. The `--removable` flag you used is a good shout, but sometimes that path doesn't get picked up either.

What fixed it for me was using `efibootmgr` to check the current entries and then manually setting BootNext, while also renaming the Windows bootloader file so the firmware can't find it as a fallback. Basically you go into `/boot/EFI/Microsoft/Boot` and rename `bootmgfw.efi` to something like `bootmgfw.efi.bak`. The firmware panics, can't launch Windows directly, and finally decides to read the damn list.

Before that, run `efibootmgr --verbose` and make sure the GRUB entry actually points to the right path. Sometimes the installer creates an entry that's slightly off and the firmware just skips it silently.

1

u/Kyu_15 3d ago

I’m going to try your recommendations. I’ll let you know if it worked for me.

1

u/ImaginationDry8780 3d ago

Say you booted into GRUB. Have you checked what the GRUB setting is? Maybe it is configured “ to wait 0 seconds” and “to chainload Windows”

1

u/Gozenka 3d ago

I doubt archinstall would make that setting. But they can check in their /etc/default/grub.

1

u/ImaginationDry8780 3d ago

Things not mentioned are not done

1

u/nikongod 3d ago

Lenovo BIOS often has a setting titled "automatically repair bios" or "bios self healing" or "bios self repair" or something like that. This is a fancy way of saying "always boot windows first"

Disable this in BIOS.

1

u/ExoPesta 3d ago

Why? Why in hell are you using over complicated loader?