Linux – Convert GPT to UEFI or MBR

arch linuxgptpartitioninguefi

I have HDD with Arch linux installed, this disk uses GPT. I would like to convert it to UEFI for using with another laptop (ASUS N56VM), which doesn't support booting from GPT at all (which is strange, because my older ASUS K43SJ can boot GPT with no problem at all).

I know that it's possible to use parted to convert GPT to MBR, however it doesn't boot either with MBR (still laptop recognizes the HDD in BIOS)

Can you please describe steps or point me to an article which I could use as a reference?

Best Answer

Let's start with some definitions.

  • UEFI is the successor to the more traditional BIOS. The implementations vary but they all offer a BIOS compatibility mode (may be disabled by default).
  • GPT is the successor to the traditional DOS partition table that offers a number of benefits notably support for booting from drives >= 2TB and >4 partitions without using a "hackish" extended partition.
  • UEFI/GPT boot standard utilizes a FAT32 "ESP" partition to contain the relevant bootloader files.
  • BIOS/DOS boot standard writes the bootloader within the first 512 bytes (MBR) which often chainloads configuration files from a partition.

As you mentioned laptops and the maximum capacity for 2.5" drives is 1TB currently and your priority appears to be maximizing compatibility, a traditional BIOS/DOS/MBR is recommended.

You may utilize gdisk or another tool for the conversion (though loss of data is high for such a task) and then install GRUB bootloader to the MBR. You may need to enable BIOS-compatibility mode in the UEFI settings to boot.

Related Question