Solaris on the MacBook Pro
Status: Fail.
I'm not interested in running Parallels, I want to run each OS natively. The plan is to triple-boot OS X, Solaris, XP.
It seemed reasonable because this guy at Sun claims to have done it.
So on to the procedure and lessons learned: Install Boot Camp - easy. Then resize and repartition the disk manually using disktool. This is all one step and once you do it there's no (easy) going back, although the reversal is explained below.
I dropped to console (go to the OS X login screen and as your username, enter '>console') and logged in as root directly for this:
diskutil resizeVolume disk0s2 16000M "Linux" Solaris 16000M "MS-DOS FAT32" Windows 15500M
Don't be tempted by the "UFS" partition ID, it will not work. Although for that mattter, neither will "Linux". But read on...
I originally planned to use 60G, 16G and 16G for the values (respectively) but that didn't work, at first throwing a "No space left on device" error. Yeah, real helpful, thanks. From reading around, the thing to do is remove some big files, maybe defrag. Removing big files worked for me. After one attempt, my partition table was apparently corrupted so future attempts at resizing resulted in an error like "the underlying command failed." So the solution was to boot from the OS X install disk and run Disk Repair on it.
So assuming you can actually successfully get 3 working partitions, this is where you're supposed to be able to boot in to Solaris (SXCR/Nevada b54 in my case) and get to installing as explained in the blog above. Trouble is, that partition shows up in fdisk as "Linux native". So I dunno how the blogger got so lucky, but I was not so lucky. I looked in to changing the partition ID manually but found these:
OpenSolaris thread
Guy from that thread's attempts
Guy from that thread's success (on external disk)
Some guy has it working but it's not documented yet
So it looks like that would be useless anyway. But there's encouraging news... people there who seem to be very familiar with EFI and GPT seem to be close to getting it to work.
Anyway, now I've got a bunch of useless partitions to get rid of, so this was helpful:
How to remove the partitions and get back to normal
I used the boot from Install Disc method (see comments) and you don't need to use Disk Utility for the unmounting, umount works fine (but you do need to unmount before every incantation of gpt as described).
umount /dev/disk0s2 [/dev/disk0s3] [/dev/disk0s4]
gpt show rdisk0
umount ...
gpt remove -i 4 rdisk0
umount ...
gpt remove -i 3 rdisk0
And then ignore all the calculation and just do this (after rebooting in to OS X):
diskutil resizeVolume disk0s2 limits
And using that information:
diskutil resizeVolume disk0s2B "MS-DOS FAT32" Windoze B
Reboot. Run Boot Camp Setup. Reclaim space. All is now as it was.
I'm not interested in running Parallels, I want to run each OS natively. The plan is to triple-boot OS X, Solaris, XP.
It seemed reasonable because this guy at Sun claims to have done it.
So on to the procedure and lessons learned: Install Boot Camp - easy. Then resize and repartition the disk manually using disktool. This is all one step and once you do it there's no (easy) going back, although the reversal is explained below.
I dropped to console (go to the OS X login screen and as your username, enter '>console') and logged in as root directly for this:
diskutil resizeVolume disk0s2 16000M "Linux" Solaris 16000M "MS-DOS FAT32" Windows 15500M
Don't be tempted by the "UFS" partition ID, it will not work. Although for that mattter, neither will "Linux". But read on...
I originally planned to use 60G, 16G and 16G for the values (respectively) but that didn't work, at first throwing a "No space left on device" error. Yeah, real helpful, thanks. From reading around, the thing to do is remove some big files, maybe defrag. Removing big files worked for me. After one attempt, my partition table was apparently corrupted so future attempts at resizing resulted in an error like "the underlying command failed." So the solution was to boot from the OS X install disk and run Disk Repair on it.
So assuming you can actually successfully get 3 working partitions, this is where you're supposed to be able to boot in to Solaris (SXCR/Nevada b54 in my case) and get to installing as explained in the blog above. Trouble is, that partition shows up in fdisk as "Linux native". So I dunno how the blogger got so lucky, but I was not so lucky. I looked in to changing the partition ID manually but found these:
OpenSolaris thread
Guy from that thread's attempts
Guy from that thread's success (on external disk)
Some guy has it working but it's not documented yet
So it looks like that would be useless anyway. But there's encouraging news... people there who seem to be very familiar with EFI and GPT seem to be close to getting it to work.
Anyway, now I've got a bunch of useless partitions to get rid of, so this was helpful:
How to remove the partitions and get back to normal
I used the boot from Install Disc method (see comments) and you don't need to use Disk Utility for the unmounting, umount works fine (but you do need to unmount before every incantation of gpt as described).
umount /dev/disk0s2 [/dev/disk0s3] [/dev/disk0s4]
gpt show rdisk0
umount ...
gpt remove -i 4 rdisk0
umount ...
gpt remove -i 3 rdisk0
And then ignore all the calculation and just do this (after rebooting in to OS X):
diskutil resizeVolume disk0s2 limits
And using that information:
diskutil resizeVolume disk0s2
Reboot. Run Boot Camp Setup. Reclaim space. All is now as it was.
