I want to upgrade my disk from MBR to GPT, and I tried using Windows' MBR2GPT.EXE tool to do the job. I used Windows' DISKPART tool to identify the disk I want to convert. However, this happened:

C:\WINDOWS\system32>MBR2GPT.EXE /convert /disk:0 /allowfullos

MBR2GPT will now attempt to convert disk 0.
If conversion is successful the disk can only be booted in GPT mode.
These changes cannot be undone!

MBR2GPT: Attempting to convert disk 0
MBR2GPT: Retrieving layout of disk
MBR2GPT: Validating layout, disk sector size is: 512 bytes
Disk layout validation failed for disk 0
MBR2GPT: Conversion failed

and the conversion failed. Using Diskpart again, I get the following output:

DISKPART> list disk

  Disk ###  Status         Size     Free     Dyn  Gpt
  --------  -------------  -------  -------  ---  ---
* Disk 0    Online          465 GB      0 B
  Disk 1    Online         3841 MB   960 KB

DISKPART> select disk 0

Disk 0 is now the selected disk.

DISKPART> list partition

  Partition ###  Type              Size     Offset
  -------------  ----------------  -------  -------
  Partition 1    Primary            100 MB  1024 KB
  Partition 2    Primary            464 GB   101 MB
  Partition 3    Recovery           813 MB   464 GB
  Partition 4    Recovery           511 MB   465 GB

Looking at the partitions on disk 0, there are 2 primary partitions and 2 hidden ones, I read here that the partitions might have something to do with the conversion failing, so I believe this is the culprit. If anyone could offer help converting my disk, that would be greatly appreciated.


Solution 1:

Hidden just means that the OS won't mount those partitions automatically. It isn't related to the success or failure of the conversion, since it's just a different value in the partition type field, the format of the partition is still the same

The MBR2GPT documentation says that in order to convert the drive to GPT all the following conditions must be met

  • The disk is currently using MBR
  • There is enough space not occupied by partitions to store the primary and secondary GPTs:
    • 16KB + 2 sectors at the front of the disk
    • 16KB + 1 sector at the end of the disk
  • There are at most 3 primary partitions in the MBR partition table
  • One of the partitions is set as active and is the system partition
  • The disk does not have any extended/logical partition
  • The BCD store on the system partition contains a default OS entry pointing to an OS partition
  • The volume IDs can be retrieved for each volume which has a drive letter assigned
  • All partitions on the disk are of MBR types recognized by Windows or has a mapping specified using the /map command-line option

https://docs.microsoft.com/en-us/windows/deployment/mbr-to-gpt

I'm not sure what type your recovery partitions are, but if they're both primary then you're out of luck. Another common issue is that there's no space left at the end of the drive for the backup GPT entries. In that case you need to resize the last partition to make space for them.

You can read Why does MBR2GPT conversion failed and how to fix? to see if it helps

But it's recommended to use a 3rd party solution, since Windows' built-in tools like diskmgmt.msc and mbr2gpt have very limited capability compared to external ones and can't solve complex situations. Some suggestions:

  • MiniTool Partition Wizard
  • EaseUS Partition Master
  • AOMEI Partition Assistant