6

Windows 10 has a feature to enter BIOS/UEFI directly from the OS, which is handy for machines that do not allow you to enter them during startup.

I would like to install Ubuntu on an OEM device and obviously I will be using the Windows feature to do this, but I will still require BIOS access in the future.

How can I access the BIOS from Ubuntu?

2 Answers2

9

The BIOS/UEFI can be accessed by pressing the appropriate key at boot time. A table of BIOS/UEFI access keys for different motherboard manufacturers is in this answer.

You can also enter the BIOS/UEFI directly from Ubuntu the way you can do sometimes from Windows by running sudo systemctl reboot --firmware-setup but I strongly recommend that Ubuntu users shouldn't use this method except for when all other methods of accessing the UEFI settings have failed. When I tried this command it reset the CMOS and all my UEFI settings got reset back to their default values including the clock. When I exited from the UEFI settings to reboot, the screen froze and I had to manually power off the computer and cold start it. Fortunately I knew my previous UEFI settings, so I could immediately restore them before exiting from the UEFI settings.

This is what man systemctl has to say about the --firmware-setup option.

--firmware-setup
    When used with the reboot command, indicate to the system's firmware to  
    reboot into the firmware setup interface. Note that this functionality 
    is not available on all systems.

man systemctl didn't say anything about resetting the CMOS. It only said "this functionality is not available on all systems".

karel
  • 114,770
  • There is no "appropriate key" on this device – Chad Warden Aug 16 '19 at 09:51
  • @ChadWarden Most BIOS/UEFI setup utilities can be accessed by pressing the appropriate access key at boot time. I edited my answer with my reply. – karel Aug 16 '19 at 09:53
  • 1
    You can enter the BIOS/UEFI directly from Ubuntu by running the command sudo systemctl reboot --firmware-setup which reboots the machine into BIOS/UEFI. Now I cannot confirm whether it works on all UEFI enabled devices but it did work on all devices I tested. – Gecko Mar 05 '22 at 13:44
  • @Gecko I strongly recommend that Ubuntu users shouldn't run sudo systemctl reboot --firmware-setup except for when all other methods of accessing the UEFI settings fail. When I tried this command it reset all my UEFI settings back to their default values including the clock. When I exited from the UEFI settings to reboot, the screen froze and I had to manually power off the computer and cold start it. – karel Mar 05 '22 at 14:03
  • 1
    Can't say my experience was the same. For me all setting stayed untouched. The experience was 1:1 the same as using the "Reboot to UEFI/BIOS" functionality on Windows. Considering that resetting BIOS entries is not mentioned in the man page, it could be that this failure is limited to your specific setup. – Gecko Mar 06 '22 at 15:37
3

On Ubuntu 20.04 opening a terminal and running

sudo systemctl reboot --firmware-setup

worked for me and rebooted me into the UEFI/BIOS.

Gecko
  • 356
  • On 20.04, I think the answer would be to just show the grub menu and access the "System Setup" menu option, which will take you to UEFI.... The original question doesn't have a version, but this question is dated 2019. The feature is there in 2018... – WU-TANG Mar 05 '22 at 16:35