Make 3TB hard drive appear as two (2TiB+750GiB) with MBR

5,133

MBR or GPT is the whole disk's format, not a partition, so you cannot have an MBR partition on a GPT disk like that. Hybrid MBR/GPT is a drive with both GPT entries and normal MBR entries, not an MBR partition on GPT disk.

Some manufacturers worked around the problem by partitioning the first 2 TiB as MBR then install Windows normally. After finished installing they install a special driver to make the OS recognize the remaining space as another separate drive so you can utilize all of the available space. This is fragile and not portable so I don't recommend using it this way.

The easiest way is just split the drive into multiple sub-2TiB partitions. Contrary to common beliefs, the limit in MBR isn't 2 TiB but 233 - 2 blocks which is ~4 TiB for normal 512-byte-sector disks and ~32 TiB with 4KB-sector disk (A.K.A Advanced Format) due to the way it defines partitions (offset + length instead of start offset + end offset). Probably your disk is using the old 512-byte sector so you can achieve that by having a single last partition start before the 2 TiB mark. For example with a 3 TB drive you can partition into a 2 TB volume + 1 GB volume (remember 2 TB < 2 TiB), a 1.99 TiB volume + 756 GiB volume, two 1.5 GB volumes, or two 800 GB volumes and a 1.4 TB volume

MBR records partition locations in terms of the starting sector and the partition's length. Both of these are 32-bit values, so in theory you could use MBR on a 4 TiB disk, so long as all the space after the 2 TiB mark is in a single primary partition, or perhaps in a single extended partition, which could in turn hold many logical partitions. Such a configuration would be somewhat limiting, but it fits within the MBR framework

Working Around MBR's Limitations

Since partitioning information is stored in the MBR partition table using a beginning block address and a length, it may in theory be possible to define partitions in such a way that the allocated space for a disk with 512-byte sectors gives a total size approaching 4 TiB, if all but one partition are located below the 2 TiB limit and the last one is assigned as starting at or close to block 232−1 and specify the size as up to 232−1, thereby defining a partition that requires 33 rather than 32 bits for the sector address to be accessed. However, in practice, only certain LBA-48-enabled operating systems, including GNU/Linux, FreeBSD and Windows 7[20] that use 64-bit sector addresses internally actually support this

https://en.wikipedia.org/wiki/Master_boot_record#Partition_table_entries

You'll need OS support for this, and also need a 3rd party disk partitioner instead of diskmgmt.msc. Fortunately Windows 7+ and all modern OSes will work with those disks without problem. To quote from Rod Smith's article above

To make a long story short, the only OSes that seemed capable of handling a partition that spanned the 2 TiB mark were Linux, FreeBSD, and Windows 7


There are many other ways though. If you use Linux or BSD then you can boot from a GPT disk in BIOS mode easily. Just create a small BIOS boot partition before installing. See Is it possible to boot Linux from a GPT disk on a BIOS system?. In Windows it's a lot trickier because you do need UEFI to boot from GPT disk. Luckily a hardware UEFI isn't required, a software UEFI like DUET or Clover works completely fine, although it's not very easy to set up and will boot a lot slower. If you're really interested in making it work that way then see

Alternatively you can use Grub2 to boot Windows from an ISO or WIM file. This way it boots much faster than a software UEFI solution

Another method is to install Windows on VHD/VHDX on a GPT disk. Just format the drive as GPT then when installing Windows, press Shift+F10 and create a VHDX, mount it and then continue as normal. I haven't tried it but many people have confirmed that it works

Share:
5,133

Related videos on Youtube

arne.b
Author by

arne.b

Updated on September 18, 2022

Comments

  • arne.b
    arne.b over 1 year

    Some manufacturers of external hard drives with capacity exceeding MBR partition capacity seem to sell them pre-partitioned to a 2TiB partition and one with the remaining capacity.

    Tools are available to make a single, larger partition out of these (at least I think I learned as much from amazon reviews of such products; presumably the disk is in GPT mode afterwards).

    Can I go the other way, i.e. use the full space of a 3TB drive, while at least one partition can be used in MBR mode (for booting Windows in a non-UEFI machine)?

    The drive is a 3.5" HD Seagate Barracuda something currently inside a USB 3 box. This Seagate Disk Wizard (pdf) for Windows, which may not be helpful anyway, refuses to install for alleged lack of a Seagate HD. I have a (non-UEFI) PC (with SATA I only) available and would not be afraid to use linux-based tools.

    • Daniel B
      Daniel B almost 10 years
      I don’t think Windows would be very happy with booting from a hybrid MBR/GPT drive. I haven’t actually tested it, though.
    • Kinnectus
      Kinnectus almost 10 years
      What are you attempting to do once the drive is partitioned. Perhaps we can recommend a simpler alternative...
    • Daniel B
      Daniel B almost 10 years
      That functionality depends on the external disk’s USB-SATA bridge controller. If you plan to install Windows on it, you would need to install it internally. The splitting functionality won’t work in that case.
    • arne.b
      arne.b almost 10 years
      @BigChris Use it as a drive for Windows and other stuff. Put backup image of old hard disk somewhere at the far end of the disk. An obvious simpler alternative would be to live with a 2TiB disk until an UEFI PC comes around, but I wondered if I could do better.
    • arne.b
      arne.b almost 10 years
      @DanielB So if I put such a disk into a (BIOS) PC, what would I see? First partition only? Nothing/Error? Anyway, I am willing to accept "No" as an answer. ;-)
    • user
      user over 8 years
      It looks like this can be done by (ab)using the concept of protective MBR in GPT. For example, Wikipedia claims that Apple Bootcamp does something much like this. en.wikipedia.org/wiki/…