LinuxBoot: Enter Open Source, Goodbye Proprietary UEFI

LinuxBoot is an Open Source alternative to Proprietary UEFI firmware. It was released last year and is now being increasingly preferred by leading hardware manufacturers as default firmware. Last year, LinuxBoot was warmly welcomed into the Open Source family by The Linux Foundation.

This project was an initiative by Ronald Minnich, author of LinuxBIOS and lead of coreboot at Google, in January 2017.

Google, Facebook, Horizon Computing Solutions, and Two Sigma collaborated together to develop the LinuxBoot project (formerly called NERF) for server machines based on Linux.

Its openness allows Server users to easily customize their own boot scripts, fix issues, build their own runtimes and reflash their firmware with their own keys. They do not need to wait for vendor updates.

LinuxBoot works fine on UEFI systems, and the developers are always happy to help people get it working on their system. It is not just restricted to servers either. It works fine on systems that run UEFI, coreboot, or u-boot.

Following is a video of Ubuntu Xenial booting for the first time with NERF BIOS:

Let’s talk about some other advantages by comparing it to UEFI in terms of Server hardware.

Advantages of LinuxBoot over UEFI

LinuxBoot vs UEFI

Here are some of the major advantages of LinuxBoot over UEFI:

Significantly faster startup

It can boot up Server boards in less than twenty seconds, versus multiple minutes on UEFI.

Significantly more flexible

LinuxBoot can make use of any devices, filesystems and protocols that Linux supports.

Potentially more secure

Linux device drivers and filesystems have significantly more scrutiny than through UEFI.

We can argue that UEFI is partly open with EDK II and LinuxBoot is partly closed. But it has been addressed that even such EDK II code does not have the proper level of inspection and correctness as the Linux Kernel goes through, while there is a huge amount of other Closed Source components within UEFI development.

On the other hand, LinuxBoot has a significantly smaller amount of binaries with only a few hundred KB, compared to the 32 MB of UEFI binaries.

To be precise, LinuxBoot fits a whole lot better into the Trusted Computing Base, unlike UEFI.

LinuxBoot has a kexec based bootloader which does not support startup on Windows/non-Linux kernels, but that is insignificant since most clouds are Linux-based Servers.

LinuxBoot adoption

In 2011, the Open Compute Project was started by Facebook who open-sourced designs of some of their Servers, built to make its data centers more efficient. LinuxBoot has been tested on a few Open Compute Hardware listed as under:

  • Winterfell
  • Leopard
  • Tioga Pass

More OCP hardware are described here in brief. The OCP Foundation runs a dedicated project on firmware through Open System Firmware.

Some other devices that support LinuxBoot are:

Last month end, Equus Compute Solutions announced the release of its WHITEBOX OPENβ„’ M2660 and M2760 Servers, as a part of their custom, cost-optimized Open-Hardware Servers and storage platforms. Both of them support LinuxBoot to customize the Server BIOS for flexibility, improved security, and create a blazingly fast booting experience.

What do you think of LinuxBoot?

LinuxBoot is quite well documented on GitHub.  Do you like the features that set it apart from UEFI? Would you prefer using LinuxBoot rather than UEFI for starting up Servers, owing to the former’s open-ended development and future? Let us know in the comments below.

About the author
Avimanyu Bandyopadhyay

Avimanyu Bandyopadhyay

Tech Nerd at It's FOSS | Doctoral Researcher on GPU-based Bioinformatics and author of <a href="">'Hands-On GPU Comput

Become a Better Linux User

With the FOSS Weekly Newsletter, you learn useful Linux tips, discover applications, explore new distros and stay updated with the latest from Linux world


Great! You’ve successfully signed up.

Welcome back! You've successfully signed in.

You've successfully subscribed to It's FOSS.

Success! Check your email for magic link to sign-in.

Success! Your billing info has been updated.

Your billing was not updated.