Jump to content

Fusion drive on older Macs? YES!


Derty
 Share

14 posts in this topic

Recommended Posts

Maybe like in RADI boot - Chameleon should pass Fusion volume UUID to kernel instead of physical partition UUID?

 

I googled that and and I think I get how this should work, but I don't know how to exactly do that. I added something like this to my org.chameleon.boot.plist:

- Add "rd=uuid boot-uuid=506D8F03-0596-32D8-BE0B-E3A4E7D5C72A" to your kernel flags

but chameleon still didn't show the fusion partition. Could you maybe help me with that?

Link to comment
Share on other sites

Well, I did not set up any fusion drive so I can only write in theory. You should specify

boot-uuid=<root voluem uuid>

in Chameleon command line or in boot.plist (in Kernel Flags) as you already did. And in theory that should be enough.

 

But, note: Chameleon does not see fusion drive . It can only see separate physical partitions. If those fusion partitions are visible in Chameleon and if they (or one of them) contains kernelcache and other files needed for initial boot, then your boot should start from there (you should select it).

 

Chameleon should then read kernelcache and other stuff it needs from that physical partition, but will pas given boot-uuid to kernel, and kernel will wait until volume with that boot-uuid becomes available (when needed drivers for fusion drive are loaded and fusion drive inited) and then should use it as root drive.

 

Edit:

"man diskutil" tells that physical partitions that make core storage volume will be "converted" or re-typed from standard Apple HFS to Apple_CoreStorage type (GPT type GUID: 53746F72-6167-11AA-AA11-00306543ECAC ?). If this is correct, then this will make them invisible to Chameleon, right?

 

If that's the case, then this type should be added to Chameleon like there is already GPT_HFS_GUID and GPT_BOOT_GUID in libsaio/disk.c - and then they should be visible in Chameleon's menu.

Link to comment
Share on other sites

Taruga tested booting from CoreStorage volume here - it works. Booted by Clover, but I would expect that it's possible with Chameleon also.

 

And to correct myself from the above post: Apple_CoreStorage is probably not pure HFS+ volume plus Taruga says that OSX adds boot helper partition with that CS volume (like in RAID config), so adding Apple_CoreStorage type to Chameleon is a bad idea. Booting should start from that boot helper partition.

Link to comment
Share on other sites

Taruga tested booting from CoreStorage volume here - it works. Booted by Clover, but I would expect that it's possible with Chameleon also.

 

And to correct myself from the above post: Apple_CoreStorage is probably not pure HFS+ volume plus Taruga says that OSX adds boot helper partition with that CS volume (like in RAID config), so adding Apple_CoreStorage type to Chameleon is a bad idea. Booting should start from that boot helper partition.

 

Somehow it works here, too. Chameleon is installed on a thumbdrive, so the computer boots from there. Chameleon doesn't show the fusion drive or one of the partitions included in the fusion drive, but when I select my bootable ML install data partition, it boots from the fusion partition instead since I included the

boot-uuid=<root voluem uuid>

flag. This works for now, but it would be nice if I could get Chameleon (or Clover if that's better) to show the fusion partition.

 

Thanks for your help!

Link to comment
Share on other sites

Hi - I have Fusion working on my 2011 Mac mini Server loaded with osx10.8.2 (non server version). It works fine and i am impressed.

 

However in my Hackintosh I have an M4-CT128M4SSD2 SSD which I have attempted to Fusion pair with a WD WDC WD1502FAEX 1.5Gb disk.

 

I have tried a number of combinations even another WD drive but during the Fusion setup process I get this POSIX error

 

"Error 22: POSIX reports: invalid argument"

 

All searches on the web do not give any reason or info regarding error 22. Any ideas would really be appreciated?

 

It appears to happen after Fusion formats the second drive, unmounts it and on attempting to remount it the error appears, as stated I have tried different drive as the HD (both WD), I wondered whether my system still sees the drives as "external" although I have used the vanilla 10.8.2 IOBlockstorage.kext and an amended one but always the same error... It would appear that POSIX errors refer to external drives.. Any ideas or suggestions would be appreciated as a web search shows nothing- Thanks..

Link to comment
Share on other sites

  • 1 month later...

I have gotten odd errors similar to that while trying to do disk operations that require rdisk access and you only have disk access, are you only giving the fusion drive access to part of the HDD? or have you cleared formatted and then unmounted the second drive (the WD) before beginning the process?

 

just a thought due to the way I understand what is going on, it is making a modified raid between the mismatched disks, and it is failing while writing that information to the tail of the second disk the buffer space that OSX uses to boot and do other odd things from due to not owning the whole disk.

 

then you may try running the same commands using your mac mini server as a host and the two drives as externals (via usb/firewire)

Link to comment
Share on other sites

 Share

×
×
  • Create New...