For this guide, let's assume:
1. You are logged in as a user with administrator privileges. I don't know if this matters for renaming the "Boot OSX" volumes from the desktop, but I was, so be aware.
2. You already have an Extra folder that is working well for you with Chameleon 2 installed on a non-RAID volume. It has DSDT.aml (if you use one), Extensions.mkext, Themes, com.apple.Boot.plist, smbios.plist (if you use one) in it.
3. Suppose that your RAID installation root volume is /dev/disk4, which is either a mirror or a stripeset consisting of /dev/disk2 and /dev/disk3.
When you create a RAID with Disk Utility, Mac OS X creates a small helper partition after each RAID slice, namely /dev/disk2s3 and /dev/disk3s3. These are all named "Boot OSX".
If you haven't already, set up your RAID root volume, and clone your working install to it with Super Duper or Carbon Copy Cloner. There should not be a /Extra on the RAID root volume and /Library/Preferences/SystemConfiguration/com.apple.Boot.plist should be vanilla, no modifications.
Boot.plist.vanilla.zip 381bytes 1028 downloads
Because I was coming from a munky w/RAID mod install, my RAID root volume was already set up. I tried and failed to get Chameleon 2 to work with the EFI partitions on my RAID slices. The computer would just reset when it tried to load Chameleon, so I formatted the EFI partitions like so:
diskutil eraseVolume "HFS+" "EFI" /dev/disk2s1 diskutil eraseVolume "HFS+" "EFI" /dev/disk3s1
This got me into Chameleon from the RAID disk, but having followed the README with Chameleon 2, when I tried to boot the "Boot OSX" partition, I got a kernel panic related to AppleIntelCPUPowerManagement.kext, so I knew my Extensions.mkext was not loading from /Extra on the RAID root volume. I moved a copy of Extra to both of the "Boot OSX" partitions, removed /Extra from my RAID root volume, and hooray it works! Then I experimented with changing the name of the "Boot OSX" partitions, and that worked, too. I also tried both RAID root volume UUIDs, and either one works.
You can skip all the sudos if you become root first with sudo -s.
OK, Let's do this, fire up Terminal:
1. Copy your Extra folder to the Desktop, and unzip the Chameleon folder to the Desktop.
2. Add "rd=uuid boot-uuid=(your UUID)" to your kernel flags in your ~/Desktop/Extra/com.apple.Boot.plist. Find your UUID using Disk Utility, right click on your RAID root volume (i.e. "Mac RAID"), then click Information. You can use the Universal Unique Identifier or the RAID Identifier:
nano ~/Desktop/Extra/com.apple.Boot.plist It should look like this: <key>Kernel Flags</key> <string>rd=uuid boot-uuid=ECCB72E4-D6EC-37DC-97C4-8AD7BD4466E6</string>
3. Set good permissions on Extra (others may work, this is how I did it):
sudo chmod -R 644 ~/Desktop/Extra sudo chown -R root:wheel ~/Desktop/Extra
4. Change to Chameleon i386 folder:
5. Install boot0 to the MBR of both disks:
sudo fdisk -f boot0 -u -y /dev/rdisk2 sudo fdisk -f boot0 -u -y /dev/rdisk3
6. Install boot1h to the bootsector of each "Boot OSX" partition:
sudo dd if=boot1h of=/dev/rdisk2s3 sudo dd if=boot1h of=/dev/rdisk3s3
7. Copy boot and Extra folder to both "Boot OSX" helper partition's root directories.
sudo diskutil mount disk2s3 sudo cp boot /Volumes/Boot\ OSX/ sudo cp -R ~/Desktop/Extra /Volumes/Boot\ OSX/ (before unmounting, if you wish, change the name of Boot OSX from your desktop, I called mine "Mac RAID Boot 1") sudo diskutil unmount disk2s3
sudo diskutil mount disk3s3 sudo cp boot /Volumes/Boot\ OSX/ sudo cp -R ~/Desktop/Extra /Volumes/Boot\ OSX/ (before unmounting, if you wish, change the name of Boot OSX from your desktop, I called mine "Mac RAID Boot 2") sudo diskutil unmount disk3s3
sudo touch /Volumes/(your RAID root volume, i.e. "Mac RAID")/System/Library/Extensions
8. Make the disk bootable (partially copied from munky). I didn't do this step, but I should and will because it makes sense. My board seems to be one that doesn't care as it boots like it should. This stage may not be necessary on some boards, but on munky's Intel board and Bad Axe boards it is. If you skip this step and your system wont boot, try doing it. That said, doing this on boards which DONT need it will do no harm so my logic is do it anyway.
A) sudo fdisk -e /dev/rdisk2 (Ignore any fdisk: could not open MBR file /usr/standalone/i386/boot0: No such file or directory error) B) f 3 C) w D) q Repeat 1-4 with your other RAID member disk, rdisk3 in this example.
Reboot, set your BIOS to boot either of your RAID member disks, and you should boot into the Chameleon 2 GUI. Select either of the "Boot OSX" partitions or whatever you may have renamed them to, and your RAID root volume will boot in a thing of beauty.
This guide may not be perfect, but I went over it several times, and I am pretty sure it is. Please give me feedback and I will make any corrections, if needed.