I recently purchased an external disk drive with 3 terabytes (2.72 TiB) of storage capacity.
Now according to Wikipedia's article on MBR, the maximum addressable storage space on a disk formatted using the MBR scheme is restricted to 2TB (1.81 TiB) so it stands to reason that high capacity hard disk drives (>2TB) must be formatted using GUID Partition Table (GPT) scheme to be able to use the entire capacity of the HDD.
Why is then the 3TB WD My Book external disk drive factory formatted with the MBR scheme and even more surprisingly, why does it show up on Windows as a 2.72 TiB drive when MBR can only address upto 1.81 TiB?
Has anyone else with a high-capacity Western Digital (or other brand) hard drive seen this before?
If it helps, the HDD is formatted using NTFS
and the sector size is 4096 bytes
. Also, here are a few screenshots:
EDIT: After I posted my answer, I read this blog post from AnandTech which says:
Now LBAs under MBR partitions are addressed using 32-bit values, the maximum of which is 2^32 or 4294967296. Each LBA on a hard drive corresponds to a 512-byte sector value (even on 4K advance format drives, they still appear as 512-byte sector drives to the OS), so the largest partition you can have in a MBR partitioned drive is 4294967296 * 512-bytes or 2,199,023,255,552 bytes.
Hard drive manufacturers define 1TB as 1 trillion bytes. If we use that definition then the largest 32-bit MBR partition would be 2.199TB (2,199,023,255,552 bytes / 1,000,000,000,000). If we define 1TB as 1024^4 bytes (TiB) then the largest 32-bit MBR partition would be 2TiB (2,199,023,255,552 bytes / 1,099,511,627,776). Either way, with a 3TB drive there’s no way we’re getting a single 3TB partition using MBR.
But as you can see, the My Book I own has a single 3TB (2.72 TiB) partition and it's using MBR. The reason why this bothers me is because of this incident where a person claims to have encountered data integrity problems with the drive after transferring more than 2TB of data on the MBR formatted 3TB drive.
fsutil fsinfo ntfsinfo <driveletter:>
andfsutil fsinfo sectorinfo <driveletter:>
commands from this answer on SO. It reports the physical sector size among other things.