4

I have dual boot but accidentally turned on the fast boot option, so now I can't access Windows.

How can I disable fast boot from Linux or access boot menu since I'm not able to do either at the moment?

I did check some posts about it but didn't find much info on how to fix it. I'm using Windows 10 and Arch Linux.

I can't enter the BIOS settings because it's fast boot -- I have no way of accessing the boot menu.

3
  • You don't do this from the operating system, you need to do it in the BIOS/EFI settings. How you enter the BIOS depends on your computer and, again, is not affected by your operating system in any way. There is usually a button to press while the machine is booting (often F2 or Del). Does that not work? Commented Jun 2, 2021 at 10:17
  • 2
    Are you talking about Windows Fast boot or a zero timeout for grub? Commented Jun 2, 2021 at 11:06
  • 1
    @roaima: Sounds like it's neither of those. Sounds like it's a firmware-level "fast boot", which is very often confused with the identically-named Windows feature but nevertheless a completely different thing. Commented Jun 3, 2021 at 12:51

1 Answer 1

5

It sounds like you have UEFI firmware in native mode, as "fast boot" is an UEFI-specific feature and doesn't really work in BIOS boot mode.

Accessing the boot menu

It is not necessary to disable firmware "fast boot" if all you want is to reboot to another OS – you can choose another boot option from within the running OS, by setting the BootNext EFI variable using efibootmgr --bootnext:

# efibootmgr
 BootCurrent: 0002
 Boot0002* Arch Linux
 Boot0003* Windows Boot Manager
# efibootmgr --bootnext 0003
# reboot

You can achieve the same on Windows using bcdedit /enum firmware to find the respective BCD entry ID and bcdedit /set {fwbootmgr} bootsequence LINUX_ID to set BootNext.

Note that this is is a temporary, one-time change. To save your choice as the new default, you need to change BootOrder using efibootmgr --bootorder, or likewise set the displayorder property via bcdedit on Windows.

Accessing firmware settings

To access the firmware setup screen ("BIOS settings") where you can disable fast boot mode, set the OsIndications EFI variable using systemctl reboot:

# systemctl reboot --firmware-setup

or, if you do not use systemd (unfortunately efibootmgr on Linux does not yet have a convenient option for this):

# var=OsIndications-8be4df61-93ca-11d2-aa0d-00e098032b8c
# printf '\7\0\0\0\1\0\0\0\0\0\0\0' > /sys/firmware/efi/efivars/$var
# reboot

The Windows equivalent is shutdown /r /t 0 /fw – or the menu item you get when Shift-clicking the "Start > Reboot" option.

0

You must log in to answer this question.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.