My story is long, so I'll start with the question - does anyone knows, how after booting the kernel Mac OS, change root_filesystem to HFS + partition on another drive? After loading "initframes" Mac OS, how to point to root filesystem on another disk.
I'm trying to prepare the most universal service pendrive ever. It must be able to run Live WinPE, Live Linux and Live Mac OS, and be able to install each of these systems to disk. Currently I have the following partitions on a stick (32GB):
0. MBR - BURG with legacy systems run the MBR
1. FAT32 (legacy + EFI) - Windows PE 8.1 with lots of repair tools, and the ability to install Windows 7 (all versions) and Windows 8.1 (all versions)
2. FAT32 (EFI) - Fedora 21 with the ability to install to disk
3. HFS + (EFI) - Mac OS X 10.8.5 (full, reduced system) repair tools, all versions of the Diagnostic Service Appe, and possibly in installing Mac OS 10.8.5, 10.9.5 and 10.10.1
With this configuration, I am able to:
1. Boot Live Windows, Linux and Mac OS both on all PCs and Macintosh and install them to disk
2. Perform diagnose on any PC and Macintosh
The only thing missing to perfection, is possible to install Windows 7 on a Mac with an internal DVD drive. Apple blocks the ability to run legacy (MBR) system with thumb drives, if host Mac have an internal DVD drive. With Windows 8 it's not a problem - it can be installed in EFI mode, but Windows 7, despite the support for UEFI, is not compatible with Mac EFI (UEFI 1.1) and after a successful installation, does not start.
Here I thought that I could use multi LUN USB stick - one of the sectors would be CDFS (WinPE), and the other one Linux + Mac OS (FAT32 & HFS +). Unfortunately, I've achieved measurable success - I've tested pendrive controllers from most major manufacturers and almost non run reliably on Macintosh. Only pendrive with Phison controllers work preaty well - in Mac OS we get two devices - SuperDrive with WinPE, and a memory stick which can be partitioned. ISame in Windows - sees the two sections good.
Unfortunately, the Mac EFI can detect only the first section (lun0) of stick. If lun0 is CDFS, detects and loads the WinPE, if It's a removable disk, you can run Mac OS or Linux. Trying to take advantage of the alternative bootloaders didn't help too - REFIT, Clover, GRUB EFI, Mac-Grub, can detect only those devices that are visible to the Mac EFI natively.
Therefore I've invented the following solution - In CDFS in lun0, place the two bootloaders. Legacy - this will allow you to run Windows, Linux and Mac OS (hackintosh); and EFI - which allows you to run Windows, Linux and Mac OS. After running WinPE, LUN1is avalible as a flash drive, so all the tools and installation images will not have to be in the CDFS. Squashfs of Linux may be in ISO.
The problem however is the MAC OS. Due to the fact that the Mac OS has to be able to write on the boot drive, it cannot be in ISO CDFS. Here we got to the question from the beginning - how, after loading the basic Mac OS with CDFS, continue to boot from the file system on the second partition in LUN1 (change root_filesystem immediately after loading kernel)
I think, that after sloving this problem, my thumb will be the most kosher service tool ever
but I could be wrong ...
If you have any suggestions, what I could do differently to get around my problem, please tell.