GPT Protective Partitions and Windows XP

If you’ve formatted a bootable hard drive on an Intel Mac (or have perhaps been tinkering with the wholly unsupported Leopard OSx86…) and later decided to put the drive to use under Windows XP, you might find that you’re unable to format the disk, with Windows Disk Management claiming the device is a “GPT Protective Partition.” You can’t format it, partition it, or even assign it drive letter. What gives?

The secret is that the GPT scheme protects itself from being read and possibly erased by utilities or operating systems which aren’t able to correctly interpret it. Until just recently, I wasn’t aware that a filesystem even had such a capability. I was under the false assumption that a utility running externally of the drive in question could always format a detected disk, no matter the filesystem in place. I doubt it could withstand the raw formatting power of DBAN, but it was enough to befuddle Windows XP.

How can the GPT scheme be undone? Typically, software that can create it can also destroy it. In my case, Leopard’s Disk Utility application was able re-partition the drive as follows:

  1. Boot a Leopard DVD (retail or OSx86) and choose your native language at the first screen.
  2. Run “Disk Utility” from the “Utilities” menu and highlight the offending drive on the left.
  3. Navigate to the “Partition” tab, choose “1 Partition” from the Volume Scheme popup menu, select your new desired format (or “Free Space”), and make sure to click the “Options…” button
  4. From the “Options” screen, you can choose between GUID Partition Table, Apple Partition Map (for PowerPC Macs), and Master Boot Record. Choose MBR, and click OK.
  5. Click “Apply” to partition the drive using the more common MBR scheme, and thus completely erase all trace of the GPT partition.

Once the partitioning is complete, you’ll be able to format and use the drive under Windows XP, Mac OS 9, or any other system incapable of comprehending GPT Partitions.

Comments

  1. Or if you prefer, Linux boot CD to the rescue. Boot up, and at the prompt:

    dd if=/dev/zero of=/dev/[DRIVE_DEVICE_HERE] bs=1k count=2

    That will zero out the first 2KB of the drive. After that, any tool will see it as completely unformatted, and you can do what you like with it.

    Replace [DRIVE_DEVICE_HERE] with the appropriate Linux device node for the drive you want to erase. SATA drives are sda, sdb, sdc, etc. depending on which port they’re plugged into. PATA’s go hda, hdb for primary master/slave; hdc hdd for secondary master/slave.

  2. Or use the ‘DiskPart’ tool on the XP command line:

    use ‘list disk’ to find the volume number of the GPT volume, then use ’select’ to focus on it

    then use the ‘clean’ function and then exit the tool
    ***WARNING*** ALL DATA WILL BE LOST ***WARNING***

    now you can create a new partion and format it.

  3. DiskPart in cmd worked a treat for me, thanks Fly! Lots of long frustrated hours have finally come to a winning conclusion! ^_^

  4. A drive I was using with FreeNas was also showing itself as GPT. The comment made by Fly enabled me to format the driver under Windows XP. Great!!

  5. *** Having iPod Troubles? Or want cool ways to Tweak out your iPod? Check out http://www.iPodTweak.com for tons of neat iPod info that you didn’t know!

Leave a Reply