When you are trying to dual boot Linux with Windows, you would want to know if you have UEFI or BIOS boot mode on your system. It helps you decide in partition making for installing Linux.
If you are dual booting it’s always advisable to install both the OS in the same booting mode. So, you should first check if you’re using UEFI or BIOS and install accordingly.
I’ll show you how to check whether your system has UEFI or BIOS in both Windows and Linux.
I am not going to discuss what BIOS is here. However, I would like to tell you a few advantages of UEFI over BIOS in case you’re wondering.
UEFI or Unified Extensible Firmware Interface was designed to overcome some limitations of BIOS. It added the ability to use larger than 2 TB disks and had a CPU independent architecture and drivers.
With a modular design, it supported remote diagnostics and repairing even with no operating system installed and a flexible without-OS environment including networking capability. Overall, you should keep the following points in mind:
Advantage of UEFI over BIOS
- UEFI is faster in initializing your hardware.
- Offers Secure Boot which means everything that loads up before the OS wakes up has to be signed. This gives your system an added layer of protection from running malware.
- BIOS does not support a partition of over 2 TB. But, UEFI does.
Check if you are using UEFI or BIOS on Windows
On Windows, “System Information” in Start panel and under BIOS Mode, you can find the boot mode. If it says Legacy, your system has BIOS. If it says UEFI, well it’s UEFI.
Alternative: Use CMD in Windows
You can launch a command prompt window as administrator and look for the path of the bootloader by running
Here, in the Windows Boot Loader section, look for Path. if the file extension for /Windows/System32/winload is .exe, your system uses legacy BIOS. If the extension is .efi, your system uses UEFI.
Another way to check UEFI or BIOS in Windows 10
If you are using Windows 10, you can check whether you are using UEFI or BIOS by opening File Explorer and navigating to C:\Windows\Panther. Open file setupact.log and search for the below string.
Detected boot environment
I would advise opening this file in notepad++, since its a huge text file and notepad may hang (at least it did for me with 6GB RAM).
You will find a couple of lines which will give you the information.
2017-11-27 09:11:31, Info IBS Callback_BootEnvironmentDetect:FirmwareType 1. 2017-11-27 09:11:31, Info IBS Callback_BootEnvironmentDetect: Detected boot environment: BIOS
Check if you are using UEFI or BIOS on Linux
The easiest way to find out if you are running UEFI or BIOS is to look for a folder /sys/firmware/efi. The folder will be missing if your system is using BIOS.
/sys/firmware/efi exists means system uses UEFI
Alternative: The other method is to install a package called efibootmgr.
On Debian and Ubuntu based distributions, you can install the efibootmgr package using the command below:
sudo apt install efibootmgr
Once done, type the below command:
If your system supports UEFI, it will output different variables. If not you will see a message saying EFI variables are not supported.
So, now you know that finding whether your system is using UEFI or BIOS isn’t tough. Wasn’t that very easy?
Even though features like faster boot and secure boot provides an upper hand to UEFI, you don’t need to worry if your system uses BIOS. Unless you have a specific requirement for UEFI or BIOS, no action is required from your end to change that.