Archive for October, 2008
On GPT, GUID and MBR
by Neonkoala on Oct.27, 2008, under News
If you’re a long term user of OS X you may be aware of the two main partition schemes available to you; MBR and GPT. MBR is the old method which relies on a partition table stored in the Master Boot Record, hence the name. This is the partition scheme used in PCs for a number of years and is compatible with BIOS based systems. Macs of course use EFI which (although capable of booting MBR partitions just as much as GPT through BIOS emulation etc) is used in conjunction with a GPT partitioning scheme.
What does this mean for an OSx86 user? Well, EFI emulation tends to work better on a GPT scheme. Thus when installing OS X it is recommended to use this scheme. However this poses a problems for dual boot scenarios such as Windows and OS X on a single disk. Windows can only be installed and booted from an MBR partitioned disk unless you are using Vista SP1 x64 or Server 2008 x64. But of course Macs are quite happy to install XP along side OS X, this is because Apple have implemented a hybrid MBR/GPT scheme which in essence allows both to coexist simultaneously by syncing the partition tables. XP will see the disk as a normal MBR based disk, Vista as a GPT and OS X as the hybrid it is. The downside of this implementation is you are constrained to 4 partitions, the same as a normal MBR disk leaving a maximum of three simultaneous operating systems to be installed as one is used as an EFI partition.
I wanted to be able to triple boot OS X Vanilla, XP 32-bit and Vista 64-bit on my laptop. The obvious constraint being only one disk is available to me so naturally I went with a hybrid scheme. However this is when the problems start. I leave this here as an aid to those aiming to achieve a similar setup.
In my first attempt I partitioned the disk like so:
Then installed OS X to the 4th partiton, Vista to the 2nd and XP to the 3rd (EFI being the first). All was fine except the NTLDR couldn’t boot XP from the 3rd partition. I attempted to move partition 3 to the 4th space using GParted on Ubuntu. This was a big mistake, it flagged my Windows partitions as ‘msftres’ – Microsoft Reserved which rendered it unbootable and me unable to remove the flag. Never use GParted with a GPT disk and Vista!
After hosing everything I attempted again with a scheme that worked:
I repeated the above procedure except with XP installed onto the final partition rather than third. I can now boot all of my partitions from the BCD bootloader using chain0. Some manual editing of the boot.ini on the XP partition may be needed from Vista to fix the partition number. And remember XP will overwrite the MBR so use the Vista DVD to restore it. As for that spare 128MB, I think that is a result ofrounding to cylinders but I’m unsure, I couldn’t rid it.
Hopefully this will aid some people. My next aim is to be able to use boot-132 to load kexts from the EFI partition so as not to waste that 200MB and have a ‘true’ vanilla install. This can’t currently be done as the bootloader here doesn’t support dual booting on the same partition.
Netkas’ forum for GPT multibooting
So… What happened?
by Neonkoala on Oct.27, 2008, under News
Yes I admit this blog has been dead for some time now.
What happened you may wonder (who am I kidding…)? To be honest life distracted me.
The future?
I now intend to start posting again. With a new more (and less in some ways) compatible laptop I have started playing with OSx86 again so I’ll aim to keep this updated now.
Thanks.