bbMbr2Gpt: convert a data disk from MBR to GPT, without touching the data
Free, no registration. A single file, no installation, for 64-bit Windows.
Back up your data before using it. The tool only rewrites partition tables, never the contents of files, but no write to a partition table is ever harmless.
The download will be available very soon.
Published by EDII-BeBackup — 48 rue Claude Balbastre, 34070 Montpellier, France.
The problem: “Extend Volume” greyed out beyond 2 TB
You have extended a disk on your hypervisor, VMware or Hyper-V: it has grown from 2 TB to 2.2 TB. In Windows Disk Management, the added space appears, but “Extend Volume” stays greyed out, or the extension stops dead at 2 TB.
The cause is not Windows, it is the partition table. An MBR table can only express 2³² blocks of 512 bytes, that is exactly 2 TiB. Anything beyond is invisible to it, whatever the disk. To use the added space, the table must be switched to GPT.
Why MBR2GPT does not work on a data disk
First obstacle: MBR2GPT.EXE refuses to run on a running server. Launched from Windows, it replies:
C:\Users\Administrateur> mbr2gpt /validate /disk:2
ERROR: MBR2GPT can only be used from the Windows Preinstallation Environment. Use /allowFullOS to override.
It is designed to run from the Windows Preinstallation Environment, that is, after booting the machine from installation media. On a production server, that means a service interruption. The /allowFullOS option overrides this refusal, but it only takes you to the next obstacle.
Second obstacle: it only converts a bootable disk. Its validation looks for a boot partition, then for a BCD store naming an operating system. On a data disk, it stops:
MBR2GPT: Attempting to validate disk 3
MBR2GPT: Retrieving layout of disk
MBR2GPT: Validating layout, disk sector size is: 512 bytes
Cannot find OS partition(s) for disk 3
Disk layout validation failed for disk 3
Third obstacle: if your disk holds an extended partition with logical partitions, the most common layout on old data disks, it refuses for yet another reason:
ValidateLayout: Unrecognized partition found, index 1
Disk layout validation failed for disk 3
diskpart can convert… but only after a clean, that is, after erasing everything.
In other words: no Microsoft tool converts a data disk that is not empty.
What bbMbr2Gpt does
- It moves no data. A GPT table needs 33 blocks at the start of the disk and 33 at the end. An MBR table already leaves these areas free: the first partition starts at block 2048 on a modern disk, at block 63 on an old one. So there is nothing to move, and if that is not the case on your disk, the tool refuses and tells you how much room is missing.
- It handles extended and logical partitions, which MBR2GPT refuses. Each logical partition becomes an ordinary GPT partition, in the same order.
- It works on a running server, disk online. No preinstallation environment, no reboot, no service interruption: volumes are not dismounted, drive letters are kept, and open files stay open. This has been checked with a file kept open for writing throughout the conversion.
- It saves your original table (main table and the complete chain of logical partition descriptors) to a file, before any write.
/undorestores it. - It refuses rather than guesses. A partition type with no established GPT equivalent, a dynamic disk, two overlapping partitions, a partition extending beyond the disk: in each case it stops before writing, explaining which.
What it does not do
- System disks. A disk that boots Windows also needs an EFI partition and a switch of the firmware to UEFI. The tool detects this case, refuses, and refers you to MBR2GPT.EXE, which is made for it.
- Moving a partition. If the first one starts too close to the beginning of the disk, or the last one ends too close to the end, it refuses and tells you by how many bytes the disk would need to grow or the partition to shrink.
- Dynamic disks (LDM). Their real layout is not described by the MBR table.
- Converting back.
/undorestores the saved table, which is not the same thing: it refuses if the disk layout has changed since the conversion, typically if you have extended a partition, which is precisely the point of the operation.
How to convert an MBR disk to GPT without data loss
Three commands, in this order, and a fourth, /undo, if something goes wrong. Administrator rights required.
1. Identify the disk
bbMbr2Gpt.exe /list
Lists the disks, their table, their partitions, and flags the system disk. Read the number twice: it is the only parameter that matters, and nothing can validate it for you.
2. Check that it can be converted
bbMbr2Gpt.exe /validate /disk:2
Says whether the disk can be converted, and if not, why, in one sentence. This command writes nothing: you can run it on any disk without any risk.
3. Convert
bbMbr2Gpt.exe /convert /disk:2 /backup:D:\sauvegardes\table-disque2.bak
Give /backup on a disk other than the one you are converting: otherwise the file is saved next to the executable, and it is better not to have it on the disk concerned.
Before writing anything, the tool shows you the target disk and waits for you to confirm in full: size, number of partitions and drive letters, because a disk number means nothing to anyone, whereas “E: F:” is recognised at a glance:
--------------------------------------------------------------------
DISK 2 2.00 TiB 3 partition(s)
drive letters: E: F:
table saved to: D:\sauvegardes\table-disque2.bak
--------------------------------------------------------------------
To write the partition table of this disk, type Convert or Yes, then Enter:
You have to type the word in full. A “y/n” is typed without thinking, and that is exactly what must not happen here. Any other answer stops the tool without writing anything. The /yes option skips the question, for a script.
The tool speaks English: it is meant to be downloaded from anywhere. Its messages are reproduced here as they are.
4. Extend the partition
Once the conversion is done, the added space is usable: open Disk Management, right-click the last partition, Extend Volume.
If something goes wrong: rolling back
As long as you have not yet extended the partition:
bbMbr2Gpt.exe /undo /disk:2 /backup:D:\sauvegardes\table-disque2.bak
What protects your disk
- The write order makes a power cut harmless. Windows decides that a disk is GPT by reading its first block. The tool therefore writes the backup copy of the GPT table at the end of the disk, then the main table, and that first block last. A power cut before this last step leaves an intact MBR disk, with unused blocks written over empty space. The switch itself fits in a single block, which is a disk’s indivisible unit of writing.
- All refusals happen before the first write, and so does the confirmation. An impossible or unconfirmed conversion leaves the disk exactly as it was: the disk is not even opened for writing before you have answered.
- Partition contents are never read or written. The tool only touches the tables: 17 KB at the start of the disk and 17 KB at the end.
- The engine is BeBackup’s, our backup software: the code that converts here is the one that reads and writes partition tables during a disk backup or restore.
Technical sheet
| File | bbMbr2Gpt.exe 1.2, 2.4 MB, no installation, no DLL |
|---|---|
| Platform | 64-bit Windows. Tested on 64-bit Windows 11; the functions used have existed since Windows Vista / Server 2008, so it should work from Server 2008 R2 to Server 2025. |
| Rights | Administrator |
| Tables | Reads and writes MBR, EBR (logical partitions) and GPT |
| 4,096-byte blocks (4Kn) | Supported by the arithmetic, but not tested |
| Disks larger than 2 TiB | This is the intended use case, but it has not yet been tested on a disk of that size |
| Price | Free, no registration |
| Publisher | EDII-BeBackup, Montpellier (France) |
Before you use it
Back up your data. The tool only rewrites partition tables, never the contents of files, but no write to a partition table is ever harmless, and a disk whose table is lost is a disk whose data is inaccessible.
If you do not have a backup of this disk, now is the time: BeBackup backs up entire disks, partition by partition, and can restore them to another disk, including converting the table to GPT along the way, which is exactly the same operation as this tool’s, done from the backup.
Frequently asked questions
Do I need to restart the server, or boot from installation media?
No. bbMbr2Gpt works with the disk online, on a running Windows system: volumes stay mounted, drive letters are kept and open files stay open. This has been checked with a file kept open for writing throughout the conversion.
I extended a VMware or Hyper-V disk beyond 2 TB and cannot extend the partition: is bbMbr2Gpt suitable?
This is what it was written for: once the table is GPT, the space beyond 2 TiB becomes usable, and “Extend Volume” works. To be clear: it has not yet been tested on a disk larger than 2 TiB, for lack of a disk that size; its internal arithmetic is 64-bit.
My disk holds an extended partition and logical partitions. Is that a problem?
No, it is even one of the cases that MBR2GPT refuses and bbMbr2Gpt handles: each logical partition becomes an ordinary GPT partition, in the same order.
Can I convert the system disk, the one that boots Windows?
No. A disk that boots Windows also needs an EFI partition and a switch of the firmware to UEFI. bbMbr2Gpt detects this case and refuses; use MBR2GPT.EXE, which is made for it.
Can I roll back?
Yes, with /undo and the table backup file created by /convert, as long as you have not changed the disk layout, for example by extending a partition.
Does it work on Windows Server?
It has been tested on 64-bit Windows 11. The functions it uses have existed since Windows Vista and Server 2008: it should therefore work from Windows Server 2008 R2 to Windows Server 2025, although this has not been tested.
The tool’s complete help (bbMbr2Gpt /help)
Reproduced as the tool displays it, version 1.2:
bbMbr2Gpt 1.2 -- MBR to GPT for data disks
bbMbr2Gpt -- convert the partition table of a DATA disk from MBR to GPT, without
moving any data.
bbMbr2Gpt /list
Lists the disks of this machine, their table and their partitions.
bbMbr2Gpt /validate /disk:<n>
Says whether the disk can be converted, and if not, why. WRITES NOTHING,
so it is safe to run on any disk.
bbMbr2Gpt /convert /disk:<n> [/backup:<file>] [/yes]
Converts. Saves the original table first -- main table and the whole chain
of logical partition descriptors -- next to the executable by default, as
bbMbr2Gpt-disk<n>-<timestamp>.bak. GIVE /backup ON ANOTHER DISK than the
one you are converting.
BEFORE WRITING, it shows the disk it is about to touch -- size, partition
count, DRIVE LETTERS -- and waits for you to type Convert or Yes in full.
/yes skips that question: for scripts only.
bbMbr2Gpt /undo /disk:<n> /backup:<file> [/force] [/yes]
Restores the original table saved by /convert. Refuses if the disk table
has changed since -- an extended partition, for instance -- because going
back would then lose data. /force overrides that refusal.
Confirmation too, by typing Undo or Yes: restoring a table erases the one
in place.
WHAT THIS TOOL DOES
- It moves NO data. A GPT needs 33 blocks at the start of the disk and 33 at the
end; an MBR table already leaves those free -- the first partition starts at
block 2048 on a modern disk, at block 63 on an old one. If that is not the
case on your disk, it refuses and says how much room is missing.
- It handles EXTENDED and LOGICAL partitions, which MBR2GPT refuses. Each logical
partition becomes an ordinary GPT entry, in the same order.
- It works on a RUNNING machine, disk online. No preinstallation environment, no
reboot: volumes stay mounted, drive letters are kept, open files stay open.
- The write order makes a power cut harmless. Windows decides a disk is GPT by
reading block 0, so the backup GPT is written first, then the primary GPT, and
the protective MBR LAST. A cut before that last step leaves an intact MBR disk.
WHAT IT DOES NOT DO
- SYSTEM disks, the one that boots Windows. It detects that case and refuses: a
bootable disk also needs an EFI system partition and a switch of the firmware
to UEFI. Use MBR2GPT.EXE, which is made for it.
- Moving a partition. If the first one starts too early, or the last one ends too
late, it refuses and says by how many bytes.
- Dynamic disks (LDM): their real layout is not described by the MBR table.
WHAT MBR2GPT REFUSES AND THIS TOOL ACCEPTS
- a DATA disk, with no BCD store and no boot partition;
- a disk holding an EXTENDED partition with LOGICAL partitions;
- and it runs on a live system, whereas MBR2GPT wants the Windows
Preinstallation Environment.
BACK UP YOUR DATA FIRST. This tool rewrites partition tables only, never the
contents of a partition -- 17 KB at the start of the disk and 17 KB at the end --
but no write to a partition table is ever harmless.
THE DISK NUMBER IS THE ONLY PARAMETER THAT MATTERS, and nothing can validate it
for you. That is why /convert and /undo ask you to confirm in full, after showing
the drive letters of the disk they are about to write. Run /list first.
Administrator rights required. 64-bit Windows.
bbMbr2Gpt is free. Latest version, documentation and our other free tools:
https://bebackup.fr/tools
Published by EDII-BeBackup -- 48 rue Claude Balbastre, 34070 Montpellier, France.
A tool made by the BeBackup team, a French publisher of backup software. Discover BeBackup
MBR2GPT, diskpart and Windows are trademarks of Microsoft. bbMbr2Gpt is an independent tool, published by EDII.