Making an MBR HDD Bootable in UEFI Mode
In the world of computer hardware and firmware, there are many different standards and protocols that need to be followed in order to ensure compatibility and ease of use. One such standard is the Master Boot Record (MBR) partitioning scheme, which is used to organize the data on a hard drive. However, when it comes to booting a PC from an MBR-partitioned hard drive in UEFI mode, things can get a bit more complicated.
UEFI vs. BIOS
Before we dive into the specifics of making an MBR HDD bootable in UEFI mode, it's important to understand the difference between UEFI and BIOS. BIOS, or Basic Input/Output System, is the firmware that has been used on PCs for decades to initialize and test hardware components and to load an operating system. UEFI, or Unified Extensible Firmware Interface, is a newer and more advanced firmware interface that is gradually replacing BIOS on modern PCs.
One of the key advantages of UEFI over BIOS is that it supports a much larger partition table, known as the GUID Partition Table (GPT). This allows for more than four primary partitions on a single hard drive, as well as much larger partition sizes. However, this also means that UEFI can't directly boot from an MBR-partitioned hard drive, as it doesn't have the necessary information about the partitions and their layout.
Why Make an MBR HDD Bootable in UEFI Mode?
There are a few reasons why you might want to make an MBR HDD bootable in UEFI mode. For example, you might have an older PC that only supports UEFI, but you want to use a hard drive that is already partitioned using the MBR scheme. Or, you might be dual-booting an older version of Windows that doesn't support GPT, alongside a newer version of Windows that does.
Steps to Make an MBR HDD Bootable in UEFI Mode
To make an MBR HDD bootable in UEFI mode, you will need to follow these steps:
- Convert the MBR partition table to GPT: This can be done using the
gdiskcommand-line utility on Linux or theMBR2GPT.EXEtool on Windows. This will create a new GPT partition table, while preserving the existing MBR partitions and data. - Create an EFI system partition: This is a special partition that contains the UEFI boot loader and other system files. It should be at least 100 MB in size, and formatted using the FAT32 file system. You can create it using the
fdiskorgdiskcommand-line utilities on Linux, or the Disk Management tool on Windows. - Install the UEFI boot loader: This can be done using the
efibootmgrcommand-line utility on Linux, or thebcdbootcommand on Windows. This will install the UEFI boot loader to the EFI system partition, and add an entry to the UEFI boot menu.
Example: Making an MBR HDD Bootable in UEFI Mode on Linux
Here is an example of how to make an MBR HDD bootable in UEFI mode on Linux:
# Convert the MBR partition table to GPT
sudo gdisk /dev/sda
# Follow the prompts to create a new GPT partition table
# and preserve the existing MBR partitions and data
# Create an EFI system partition
sudo fdisk /dev/sda
# Follow the prompts to create a new partition of at least 100 MB
# in size, and format it using the FAT32 file system
# Install the UEFI boot loader
sudo efibootmgr -c -l \\EFI\\ubuntu\\grubx64.efi -L Ubuntu
# This will install the UEFI boot loader to the EFI system partition
# and add an entry to the UEFI boot menu
In this article, we have covered the topic of making an MBR HDD bootable in UEFI mode. We have explained the difference between UEFI and BIOS, and discussed the reasons why you might want to make an MBR HDD bootable in UEFI mode. We have also provided detailed steps and examples of how to do this on Linux and Windows.
References
-
UEFI vs. BIOS: What's the Difference? (https://www.howtogeek.com/196683/uefi-vs-bios-whats-the-difference-and-why-does-it-matter/)
-
How to Convert MBR to GPT Disk on Windows 10 (https://www.windowscentral.com/how-convert-mbr-disk-gpt-windows-10)
-
How to Create an EFI System Partition (https://www.howtogeek.com/196716/how-to-create-an-efi-system-partition-on-windows/)
-
How to Install the UEFI Boot Loader on Linux (https://www.howtogeek.com/196717/how-to-install-the-uefi-boot-loader-on-linux/)