Well, what can I say? FreeBSD is installed. It was a fairly ugly process, however. The real problem came with partitioning, which is what I expected. From the research I did, it appeared that the FreeBSD installer and operating system recognized and was capable of working with GPT partition tables. Just to be sure, I removed my MBR sync of the GPT and turned it into one huge EFI protective partition. If the installer saw my partition table, then I could rest assured that it would handle everything appropriately and my system wasn't in danger (at least not too much).
Well, my partitions showed, so I went ahead and created slices and partitions within it. After completing the install, I did the big reboot that would determine whether or not the installer had succeeded. A folder with a flashing question mark. Hm, not good. After a few seconds, the FreeBSD bootloader came up, and I was able to boot into my new system. My next priority was to make sure that my other operating systems were still usable. After some testing with several rescue disks, I determined that somehow the FreeBSD installer had somehow managed to add a partition to my GPT, but in the process destroyed it to the point that OS X and Windows XP were unbootable.
I ended up having to scrap my entire system and reinstall it from scratch. Here's what I did.
- Install OS X on a partition that doesn't take up the entire hard drive. Use Disk Utility to accomplish this.
- Install rEFIt.
- Use a *Linux* installer CD that has 'parted' on it. I used the Gentoo minimal CD for this. Using parted, create a partition that will be used to house FreeBSD. Type doesn't matter.
- Boot off the FreeBSD installation disk. Your level of success may vary, if it panics because of some Apple APM, reboot and try again. The next time you see "Apple APM" on the screen, hit your Mac's power button briefly. It worked for me, oddly enough.
- In the partitioning setup, change the type of the partition you created in parted to 165 and set it as bootable.
- In the bootloader setup, make sure you choose the standard FreeBSD boot manager -- just the regular loader probably won't work, as I found out.
- After it's finished installing, you should probably be able to boot FreeBSD, but not OS X. You'll need to boot back into the Linux CD.
- Start up parted. It'll probably say something about it not being sure if the partition table is GPT or not. Just say yes. Next, print out the partition table in sectors and write down the starting sector and size of the partition (also in sectors). Then delete (yes, delete!) the FreeBSD partition.
- Your partition table is now repaired. At this point, you can probably boot OS X once again. What you need to do now is boot from your OS X installation disk, start up Terminal. After umounting your OS X partition which is automatically mounted, run the following command to recreate the FreeBSD partition:
gpt add -b (starting sector) -i 3 -s (size of partition) -t 516E7CB4-6ECF-11D6-8FF8-00022D09712B /dev/disk0
- Reboot, and rEFIt should list both OS X and FreeBSD as boot options.
Of course, I still haven't gotten a lot of things working (such as X), but I'm trusting that the payoff will be a solid system that doesn't require a lot of fiddling. I'll update any progress I make with it.