MBR2GPT.EXE converts a disk from the Master Boot Record (MBR) to the GUID Partition Table (GPT) partition style without modifying or deleting data on the disk. The tool runs from a Windows Preinstallation Environment (Windows PE) command prompt, but can also be run from the full Windows operating system (OS) by using the /allowFullOS option.
MBR2GPT.EXE is located in the Windows\System32 directory on a computer running Windows.
The tool is available in both the full OS environment and Windows PE.
See the following video for a detailed description and demonstration of MBR2GPT.
MBR2GPT can be used to:
Convert any attached MBR-formatted system disk to the GPT partition format. The tool can't be used to convert non-system disks from MBR to GPT.
Convert an MBR disk with BitLocker-encrypted volumes as long as protection is suspended. To resume BitLocker after conversion, the existing protectors need to be deleted and then recreated.
Convert an operating system disk from MBR to GPT using Microsoft Configuration Manager or Microsoft Deployment Toolkit (MDT).
Offline conversion of system disks with earlier versions of Windows installed, such as Windows 7, 8, or 8.1 aren't officially supported. The recommended method to convert these disks is to upgrade the operating system to a currently supported version of Windows, then perform the MBR to GPT conversion.
Important
After the disk has been converted to GPT partition style, the firmware must be reconfigured to boot in UEFI mode.
Make sure the device supports UEFI before attempting to convert the disk.
Disk Prerequisites
Before any change to the disk is made, MBR2GPT validates the layout and geometry of the selected disk to ensure that:
The disk is currently using MBR
There's enough space not occupied by partitions to store the primary and secondary GPTs:
16 KB + 2 sectors at the front of the disk
16 KB + 1 sector at the end of the disk
There are at most three primary partitions in the MBR partition table
One of the partitions is set as active and is the system partition
The disk doesn't 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 that 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
If any of these checks fails, the conversion doesn't proceed, and an error is returned.
Instructs MBR2GPT.exe to perform only the disk validation steps and report whether the disk is eligible for conversion.
/convert
Instructs MBR2GPT.exe to perform the disk validation and to proceed with the conversion if all validation tests pass.
/disk:<diskNumber>
Specifies the disk number of the disk to be converted to GPT. If not specified, the system disk is used. The mechanism used is the same as used by the diskpart.exe tool SELECT DISK SYSTEM command.
/logs:<logDirectory>
Specifies the directory where MBR2GPT.exe logs should be written. If not specified, %windir% is used. If specified, the directory must already exist, it isn't automatically created or overwritten.
/map:<source>=<destination>
Specifies other partition type mappings between MBR and GPT. The MBR partition number is specified in decimal notation, not hexadecimal. The GPT GUID can contain brackets, for example: /map:42={af9b60a0-1431-4f62-bc68-3311714a69ad}. Multiple /map options can be specified if multiple mappings are required.
/allowFullOS
By default, MBR2GPT.exe can only run from Windows PE and is blocked from running in full Windows. This option overrides this block and enables disk conversion while running in the full Windows environment. Note: Since the existing MBR system partition is in use while running the full Windows environment, it can't be reused. In this case, a new EFI system partition is created by shrinking the OS partition.
Examples
Validation example
In the following example, disk 0 is validated for conversion. Errors and warnings are logged to the default location of %windir%.
Using DiskPart the current disk partition layout is displayed before the conversion. Three partitions are present on the MBR disk (disk 0):
A system reserved partition.
A Windows partition.
A recovery partition.
A DVD-ROM is also present as volume 0.
The OS volume is selected, partitions are listed, and partition details are displayed for the OS partition. The MBR partition type is 07 corresponding to the installable file system (IFS) type.
The MBR2GPT tool is used to convert disk 0.
The DiskPart tool displays that disk 0 is now using the GPT format.
The new disk layout is displayed - four partitions are present on the GPT disk: three are identical to the previous partitions and one is the new EFI system partition (volume 3).
The OS volume is selected again. The detail displays that the OS volume is converted to the GPT partition type of ebd0a0a2-b9e5-4433-87c0-68b6b72699c7 corresponding to the PARTITION_BASIC_DATA_GUID type.
As noted in the output from the MBR2GPT tool, changes to the computer firmware need to be made so that the new EFI system partition boots properly.
The following steps illustrate high-level phases of the MBR-to-GPT conversion process:
Disk validation is performed.
The disk is repartitioned to create an EFI system partition if one doesn't already exist.
UEFI boot files are installed to the EFI system partition.
GPT metadata and layout information are applied.
The boot configuration data (BCD) store is updated.
Drive letter assignments are restored.
Creating an EFI system partition
For Windows to remain bootable after the conversion, an EFI system partition must be in place. MBR2GPT creates the EFI system partition using the following rules:
The existing MBR system partition is reused if it meets these requirements:
It isn't also the OS or Windows Recovery Environment partition.
It is at least 100 MB (or 260 MB for 4K sector size disks) in size.
It's less than or equal to 1 GB in size. This size is a safety precaution to ensure it isn't a data partition.
The conversion isn't being performed from the full OS. In this case, the existing MBR system partition is in use and can't be repurposed.
If the existing MBR system partition can't be reused, a new EFI system partition is created by shrinking the OS partition. This new partition has a size of 100 MB (or 260 MB for 4K sector size disks) and is formatted FAT32.
If the existing MBR system partition isn't reused for the EFI system partition, it's no longer used by the boot process after the conversion. Other partitions aren't modified.
Important
If the existing MBR system partition isn't reused for the EFI system partition, it might be assigned a drive letter. If this small partition isn't going to be used, its drive letter must be manually hidden.
Partition type mapping and partition attributes
Since GPT partitions use a different set of type IDs than MBR partitions, each partition on the converted disk must be assigned a new type ID. The partition type mapping follows these rules:
The EFI system partition is always set to partition type PARTITION_SYSTEM_GUID (c12a7328-f81f-11d2-ba4b-00a0c93ec93b).
If an MBR partition is of a type that matches one of the entries specified in the /map switch, the specified GPT partition type ID is used.
If the MBR partition is of type 0x27, the partition is converted to a GPT partition of type PARTITION_MSFT_RECOVERY_GUID (de94bba4-06d1-4d40-a16a-bfd50179d6ac).
All other MBR partitions recognized by Windows are converted to GPT partitions of type PARTITION_BASIC_DATA_GUID (ebd0a0a2-b9e5-4433-87c0-68b6b72699c7).
In addition to applying the correct partition types, partitions of type PARTITION_MSFT_RECOVERY_GUID also have the following GPT attributes set:
The conversion tool attempts to remap all drive letter assignment information contained in the registry that corresponds to the volumes of the converted disk. If a drive letter assignment can't be restored, an error is displayed at the console and in the log, so that correct assignment of the drive letter can be manually performed.
Important
This code runs after the layout conversion takes place, so the operation can't be undone at this stage.
The conversion tool will obtain volume unique ID data before and after the layout conversion, organizing this information into a lookup table. It then iterates through all the entries in HKLM\SYSTEM\MountedDevices, and for each entry it does the following:
Checks if the unique ID corresponds to any of the unique IDs for any of the volumes that are part of the converted disk.
If found, set the value to be the new unique ID, obtained after the layout conversion.
If the new unique ID can't be set and the value name starts with \DosDevices, issue a console and log warning about the need for manual intervention in properly restoring the drive letter assignment.
Troubleshooting
The tool displays status information in its output. Both validation and conversion are clear if any errors are encountered. For example, if one or more partitions don't translate properly, this information is displayed and the conversion not performed. To view more detail about any errors that are encountered, see the associated log files.
Logs
Four log files are created by the MBR2GPT tool:
diagerr.xml
diagwrn.xml
setupact.log
setuperr.log
These files contain errors and warnings encountered during disk validation and conversion. Information in these files can be helpful in diagnosing problems with the tool. The setupact.log and setuperr.log files have the most detailed information about disk layouts, processes, and other information pertaining to disk validation and conversion.
Note
The setupact.log* files are different than the Windows Setup files that are found in the %Windir%\Panther directory.
The default location for all these log files in Windows PE is %windir%.
Interactive help
To view a list of options available when using the tool, enter the following command in an elevated command prompt:
MBR2GPT has the following associated return codes:
Return code
Description
0
Conversion completed successfully.
1
Conversion was canceled by the user.
2
Conversion failed due to an internal error.
3
Conversion failed due to an initialization error.
4
Conversion failed due to invalid command-line parameters.
5
Conversion failed due to error reading the geometry and layout of the selected disk.
6
Conversion failed because one or more volumes on the disk is encrypted.
7
Conversion failed because the geometry and layout of the selected disk don't meet requirements.
8
Conversion failed due to error while creating the EFI system partition.
9
Conversion failed due to error installing boot files.
10
Conversion failed due to error while applying GPT layout.
100
Conversion to GPT layout succeeded, but some boot configuration data entries couldn't be restored.
Determining the partition type
The partition type can be determined in one of three ways:
Using Windows PowerShell
Using the Disk Management tool
Using the DiskPart tool
Windows PowerShell
The following command can be entered at a Windows PowerShell prompt to display the disk number and partition type:
PowerShell
Get-Disk | ft -Auto
Example output:
PowerShell
PS C:\> Get-Disk | ft -Auto
Number Friendly Name Serial Number HealthStatus OperationalStatus Total Size Partition Style
------ ------------- ------------- ------------ ----------------- ---------- ---------------
0 MTFDDAK256MAM-1K1 13050928F47C Healthy Online 238.47 GB MBR
1 ST1000DM003-1ER162 Z4Y3GD8F Healthy Online 931.51 GB GPT
Disk Management tool
The partition type of a disk can be viewed by using the Disk Management tool:
Right-click on the Start Menu and select Disk Management. Alternatively, right-click on the Start Menu and select Run. In the Run dialog box that appears, enter diskmgmt.msc and then select OK.
In the Disk Management window that appears:
On the bottom pane, select the disk number of interest.
Select the Action menu and then select All Tasks > Properties. Alternatively, right-click on the disk number of interest and select Properties.
In the Properties dialog box that appears for the disk, select the Volumes tab.
Under the Volumes tab, the partition type is displayed next to Partition style:.
DiskPart tool
The partition type can be determined with the DiskPart tool. The DiskPart tool is useful in scenarios where the Disk Management tool and PowerShell aren't available, such as in WinPE. PowerShell isn't available in WinPE when the PowerShell optional component isn't loaded. To use the DiskPart tool to determine the partition type:
Open an elevated command prompt.
In the elevated command prompt that opens enter the following command:
Windows Command Prompt
DiskPart.exe
The DISKPART> prompt is displayed in the command prompt windows. At the DISKPART> prompt, enter the following command:
Windows Command Prompt
list disk
The partition type is displayed in the Gpt column. If the partition is GPT, an asterisk (*) is displayed in the column. If the partition is MBR, the column is blank.
The following shows an example output of the DiskPart tool showing the partition type for two disks:
This module describes some of the different storage technologies, including different types of server-based and cloud-based storage. This module will also cover considerations for configuring storage for use in Windows client.