Mike finally agreed to try Linux. That’s how this whole thing began. I gave him a couple of options for some user-friendly distros and he settled on Ubuntu. Downloaded the ISO, burned, began the process. I had one partition I left OSX on, and I installed Ubuntu in the spare partition.

/dev/sda2 is the OSX drive, and / is mounted at /dev/sda3. I’ve got /boot/ on /sda3 and my swap is on /dev/sda4. I got everything up and running ok. Had a minor hiccup with the bluetooth keyboard–it was detected pre-boot and worked fine, but for some reason Ubuntu failed to load the drivers in userland. I had a spare USB keyboard lying around, so I switched it out and kept on going. Wireless drivers also took some manual install. Nothing ndiswrapper couldn’t handle. So at this point, we’ve got a fully functioning Ubuntu install. Startup is fine, goes to Grub, can boot into Ubuntu a-ok.

So now I want to put OSX into my Grub config. I tried every possible combination of root/rootnoverify/guid and kernel/chainloader (with and without –force) imaginable. Playing in the Grub commandline for a bit, I did get some helpful info: uuid revealed all the partions as I expected them, and that hd0,1 was in fact htfsplus as I expected. However, when experimenting with root(hd0,1) and trying to chainloader to /usr/standalone/i386/boot.efi, I would get a “Drive cannot be mounted” error. I am completely out of ideas there (can read but not boot to htfsplus?). I also attempted the boot_v8 method, but that halted post Grub but before kernel would kick in. Finally came across rEFIt. Made a bootable CD of it and restarted with that in place. It read all of my partitions and allowed me to boot back into OS X. Reading a bit more into rEFIt, I installed it as my new bootloader. Works like a charm :)