Accessing your computer’s firmware settings can be done directly from the Linux terminal using a specific command. Many users wonder how to enter bios from linux terminal without rebooting and pressing keys like F2 or Del. This guide shows you the exact steps to get into BIOS or UEFI firmware settings using only command-line tools.
You don’t need to guess the right key for your motherboard. Linux provides a simple command that tells the system to boot into the firmware interface on the next restart. This works on most modern distributions including Ubuntu, Fedora, Debian, and Arch Linux.
How To Enter Bios From Linux Terminal
The most reliable method uses the systemctl command with a special firmware option. This command is part of systemd, which runs on almost all Linux distributions today. Here is the exact command you need to run:
systemctl reboot --firmware-setup
Run this command in your terminal as a regular user. It will immediately reboot your system and take you directly into the BIOS or UEFI settings menu. No key pressing required.
If your system uses an older init system or the command does not work, there are alternative methods. We will cover those in the next sections.
Prerequisites For Using The Firmware Command
- Your system must use systemd (most modern distributions do)
- Your motherboard must support UEFI firmware interface
- You need sudo privileges if your user does not have permission
- The firmware must be configured to allow booting into setup
To check if your system uses systemd, run systemctl --version in the terminal. If you see a version number, you are good to go. If you get an error, your system might use SysV init or another init system.
Step-By-Step Instructions For Entering BIOS
- Open your terminal emulator (Ctrl+Alt+T on most distributions)
- Type the following command:
systemctl reboot --firmware-setup - Press Enter. The system will immediately start rebooting
- Wait for the reboot to complete. Your screen will show the firmware setup menu
- Make any changes you need in BIOS/UEFI
- Save and exit to boot back into Linux
If you get a permission denied error, prepend sudo to the command: sudo systemctl reboot --firmware-setup. You will need to enter your user password.
Some systems may require you to hold a key during boot even after using this command. This is rare but can happen on older hardware. In that case, try the alternative methods below.
Alternative Methods If The Systemctl Command Fails
Not all systems support the firmware-setup option. If you see an error like “Firmware setup not supported”, try these alternatives:
Method 1: Using Grub Bootloader
You can tell GRUB to boot into the firmware setup menu. Edit the GRUB configuration file:
sudo nano /etc/default/grub
Find the line starting with GRUB_CMDLINE_LINUX_DEFAULT and add reboot=firmware-setup inside the quotes. Save the file and update GRUB:
sudo update-grub
Now when you reboot, the system should enter firmware setup automatically. This method is more persistent but requires editing system files.
Method 2: Using Efibootmgr
If you have UEFI firmware, you can use the efibootmgr tool. Install it first:
sudo apt install efibootmgr # Debian/Ubuntu
sudo dnf install efibootmgr # Fedora
Then run:
sudo efibootmgr --bootnext 0000
This sets the next boot to entry 0000, which is often the firmware setup. You can list all boot entries with sudo efibootmgr -v to find the correct number.
Method 3: Using The Traditional Key Press Method
If nothing else works, you can always use the classic method. Reboot your computer and watch for a message like “Press F2 to enter setup” or “Press Del to enter BIOS”. Common keys include:
- F2 (most common for laptops)
- Del (common for desktop motherboards)
- F10 (HP systems)
- F12 (Dell systems)
- Esc (some Lenovo systems)
You need to press the key repeatedly as soon as the computer starts booting. Timing is critical. If you miss it, let the system boot fully and try again.
Understanding BIOS Vs UEFI Firmware
Most computers sold after 2012 use UEFI instead of traditional BIOS. The term “BIOS” is still commonly used, but the underlying technology is different. UEFI offers a graphical interface, mouse support, and faster boot times.
When you use the systemctl reboot --firmware-setup command, it works with both BIOS and UEFI systems. However, some older BIOS-only systems may not support this feature at all.
To check if your system uses UEFI or legacy BIOS, run:
ls /sys/firmware/efi
If this directory exists, you are using UEFI. If not, you have a legacy BIOS system.
Common Issues And Troubleshooting
Sometimes the command does not work as expected. Here are common problems and solutions:
Issue: “Firmware setup not supported” Error
This usually means your firmware does not support booting directly into setup. Try the efibootmgr method or use the traditional key press method. Some older motherboards simply lack this feature.
Issue: System Reboots Normally Instead Of Entering BIOS
Double-check that you typed the command correctly. The exact syntax is systemctl reboot --firmware-setup. Note the double dash before firmware-setup. If you used a single dash, it will not work.
Issue: Permission Denied
You need root privileges to reboot the system. Use sudo before the command. If you still get permission errors, check that your user is in the sudo group.
Issue: Command Not Found
If your system does not have systemctl, you might be using an older distribution or a minimal install. Install systemd if possible, or use one of the alternative methods listed above.
Advanced Tips For Power Users
If you frequently need to enter BIOS, you can create an alias in your shell configuration file. Add this line to ~/.bashrc or ~/.zshrc:
alias enterbios='sudo systemctl reboot --firmware-setup'
Now you can just type enterbios in your terminal to reboot into firmware setup. This saves time and reduces typing errors.
You can also create a desktop shortcut or a script that runs the command with a single click. This is useful if you are not comfortable with the terminal.
Using Systemd Boot Menu For Multiple OS Systems
If you dual-boot Linux with Windows or another OS, the firmware-setup command still works. It will take you to the motherboard’s firmware menu, not the bootloader. From there you can change boot order or other settings.
For systemd-boot users, you can also add an entry to boot into firmware setup. Edit the loader configuration file:
sudo nano /boot/loader/loader.conf
Add the line console-mode keep to prevent resolution changes. Then reboot and select the firmware setup option from the boot menu if available.
Frequently Asked Questions
What Is The Command To Enter BIOS From Linux Terminal?
The primary command is systemctl reboot --firmware-setup. Run it with sudo if needed. This command tells systemd to reboot directly into the firmware setup menu.
Can I Enter BIOS Without Rebooting?
No, you cannot access BIOS settings from within a running operating system. You must reboot the computer to enter the firmware interface. The terminal command simply automates the reboot process.
Why Does Systemctl Reboot –Firmware-setup Not Work On My Computer?
This command requires UEFI firmware support. Older BIOS systems or certain motherboard models may not support this feature. Try using efibootmgr or the traditional key press method instead.
How Do I Enter BIOS On A Linux Laptop?
The same command works on laptops: sudo systemctl reboot --firmware-setup. If it fails, check your laptop manufacturer’s key (often F2 or F10) and press it during boot.
Is There A GUI Way To Enter BIOS From Linux?
Some desktop environments like GNOME have a “Firmware Settings” option in the power menu. You can also use the gnome-control-center to find a reboot option that enters firmware. However, the terminal method is faster and more universal.
Final Thoughts On Accessing Firmware Settings
Knowing how to enter bios from linux terminal saves you from the frustration of mashing keys during boot. The systemctl command is the easiest and most reliable method for modern systems. It works across different distributions and hardware configurations.
If you encounter issues, remember that alternative methods exist. The efibootmgr tool gives you fine-grained control over UEFI boot entries. The traditional key press method always works as a fallback.
Practice the command a few times so it becomes second nature. You will find yourself using it whenever you need to change boot order, enable virtualization, or adjust hardware settings. The terminal approach is faster than rebooting and guessing keys.
Always save your changes in BIOS before exiting. If you make a mistake, you can usually reset to default settings from within the firmware menu. Most systems also have a CMOS clear jumper on the motherboard as a last resort.
With these instructions, you can confidently manage your firmware settings from the Linux command line. No more frantic key pressing or searching for the right key combination. Just one command and you are in.