Linux – What are the disadvantages of using BIOS compatibility mode over UEFI boot


I bought a Samsung series 9 laptop with 64-bit Windows 8 pre-installed and wish to install Linux (probably Ubuntu 13.04 when it comes out next week, but also considering Mint 14). Now there have been multiple reports of firmware problems and laptops bricking up irrevocably when installing Ubuntu when UEFI is enabled. The standard advice seems to be to update the BIOS to the latest version and then disable UEFI mode to reduce the chance of bricking.

My questions:

  • What are the disadvantages of doing so?
  • What else do I need to watch out for?
  • If I disable UEFI, do I need the 32 rather than the 64-bit version of Linux?

Best Answer

There are several differences between BIOS-mode and EFI-mode booting:

  • On new computers, a BIOS-mode boot is likely to take longer than an EFI-mode boot (by a few seconds).
  • Each mode has its own boot loaders and boot managers. In BIOS mode, you've got LILO, GRUB Legacy, GRUB 2, BURG, SYSLINUX, and a few others for Linux. In EFI mode, you've got ELILO, Fedora's patched GRUB Legacy, GRUB 2, the Linux kernel's EFI stub loader, rEFInd, gummiboot, and one or two very exotic boot loaders. (See my Web page on the topic for details about these EFI boot loaders and boot managers.) You might have a preference for a specific BIOS-only or an EFI-only boot loader.
  • EFI-mode boot loader maintenance is different from BIOS-mode boot loader maintenance. Once you know what you're doing, and if your EFI isn't bug-laden, EFI boot loader maintenance is easier and more flexible; but most newbies find it harder because they're familiar with the BIOS model and because tools for managing BIOS boot loaders are better integrated into OSes and OS installers than are tools for managing EFI boot loaders.
  • EFI-mode booting gives you access to EFI runtime services. Currently, this is pretty minor -- they let you manage the boot order from Linux and let the kernel store data in NVRAM in the event of a kernel panic, but that's about it. In the future, EFI runtime services may become more important.
  • EFI provides a boot-time environment that can be handy for things like editing boot loader configuration files without booting an OS.
  • Recent EFIs, including those that ship on computers with Windows 8, support Secure Boot. This is currently more of a hassle than an advantage for Linux users because Secure Boot support in Linux is still primitive; but it does provide at least a theoretical security advantage because it helps protect against EFI boot kits.
  • Although not a BIOS disadvantage per se, switching from EFI mode to BIOS mode requires re-installing your OS(es), or at least reconfiguring their boot loaders -- at least, assuming you want to keep anything already installed (Windows, if you haven't yet installed anything else).

All of these are absolutely trivial compared to the big drawback to EFI-mode booting on Samsung laptops that you've identified: If the Samsung firmware bug is triggered, your new computer will become a useless lump.

Concerning the bit-width of Linux, in EFI mode, you're best off with the 64-bit version. Although the 32-bit version can work with some hoop-jumping, the 64-bit version will be easier to install and will work better. In BIOS mode, either version will work, although I still recommend the 64-bit version because it's likely to be faster, particularly with some types of programs.

Related Question