Jump to content

dual-boot 2 installs of Mac OS x86 on one machine - internal & USB


BuXb
 Share

21 posts in this topic

Recommended Posts

I know it is possible - someone has posted that he does it somewhere here in the forum a long time ago but I didn't bookmark it. I tried all sorts of bootloading ways (chain0 via NTLDR, Acronis Bootloader, Grub), what it winds down to is: the darwin bootloader (which is eventually doing the booting into our hackint0shes) f**cks it up, no matter by which boting-way I got to it. Even if it detects the Mac OS install on my USB HD correctly (hd1,2) and even displays the name of that install correctly (Mac OS x86 on USB), the darwin BL will ALLWAYS load the install on the install in the built in HD (0,2). The only way I have been able to circumvent (well, rather 'hack' it) is: from within Windows via Mac Drive, rename the crucial files & folders in the Mac OS x86 install on my 1st HD to folder_ or mach_kernel_. Then the darwin bootloader gets the clue that it should better boot from the USB drive.

 

But darn, there gotta be a smoother way to go about this, right?

 

I know this is a limitation (well actually bug) of the old darwin bootloader we are using. Maybe hack the bootloader ?? Or is there a more current darwin bootloader we can use?

 

Please help - thanks.

Link to comment
Share on other sites

Actually I had two OSX installs for some months on the same drive, at one point one being 10.4.6 and the other 10.4.7, before erasing one to install WinVista. I used the acronis boot loader to handle them eventually, but when I install an os I always disable it and install the usual way; the only other detail that comes to mind is I took care to hide the other system partitions (windows, osx) when installed the second osx (which i usually do when installing OSes), which was telling the OS it was on the first primary and active partition of the drive.

I did nothing much else, and all went smoothly; and re-activating acronis os selector detected all the oses, including the two osx's; or better, before re-activating os selector, i unhid the other system partitions, and the darwin loader of one osx could mount the other without acronis in the way.

 

Maybe this smoothness was because all were on the same (primary) drive; I didn't test this on secondary drives, let alone external ones.

Link to comment
Share on other sites

Hi cbmkgd. From what you are writing it seems that you did not just "hide" the other OS X partiton ini Acronis bootloader but also with some partitioning tool? Which one was that, if so? Because Partition Magic will not hide HFS formatted partitions.

Link to comment
Share on other sites

Yes, been doing this a lot lately so forgot about details: I use the bootable cd one can make with Acronis Disk Director, which contains a bootable version of DiskDirector and a way to re-activate OS Selector.

(in fact DD is no more installed on my systems, i only use the bootable cd to mess with the partitions; also you can put TrueImage on that bootable cd; earlier versions can be found on Hiren's BootCD)

 

Acronis' (and other tools') way to 'hide' a partition is to change it's type: from 0xaf to 0xbf or something like that (or in general, different by 0x10 from usual id). So it's not a terribly altering procedure as long as you can change it back to 0xaf.

 

I didn't test at the time what happened when other os'es are not hidden, so can't confirm this is the crucial step for your problem.

Link to comment
Share on other sites

Acronis' (and other tools') way to 'hide' a partition is to change it's type: from 0xaf to 0xbf or something like that (or in general, different by 0x10 from usual id).
I see, thanks for the info. So I guess when you boot Mac OS x86 finder will not have found the hidden partition, right? I am asking because when I 'hide' NTFS or FAT Partitions with Partiton Magic Windows XP does still see them as if nothing has happened ..
Link to comment
Share on other sites

Strange. My Win2000 isn't seen by my WinVista, and vice-versa. Except in disk management in some limited form, but I expect that.

(well, I use the "force hiding partition" in acronis os selector... not sure what additional measures it takes).

 

And indeed, when I hid one osx from the other, it didn't see it, not mounted on desktop.

But eventually i made them see each other, could be usefull at times. That's when i took time to see if one could boot the other (before letting acronis take over again); and the darwin bl's didn't have the problem you mention.

Link to comment
Share on other sites

That's when i took time to see if one could boot the other (before letting acronis take over again); and the darwin bl's didn't have the problem you mention.
yeah I think now I have all the information I need. Obviously the darwin bl has a problem when there are two bootable Mac OS x86 volumes on two drives, one of which is even a USB drive, because you do not have the problem that even if choosing install b it would boot install a.

 

SO I NEED SOMEONE TO COMPILE A (NEWER?) NON-BUGGY VERSION OF THE DARWIN BL WHICH EVEN BOOTS SOPHISTICATED CONFIGS OF OUR HOMEBREWN MAC OSes .. :whistle:

Link to comment
Share on other sites

Guess what - you're not gonna frickin' believe this - if I boot the USB drive in verbose mode (-v) it BOOTS - even without renaming my standard install's system folder .. :) now isn't THAT a really stupid bug .. :D

Link to comment
Share on other sites

If you have some spare MB on your Harddisk (or your OSX is FAT32) you could give a shot for WINGrub. It needs a little space on a Fat32 Partition. Then you can install it into the MBR and switch your versions. The Trick is to use the "makeactive" parameter, that switches the chosen Partition to be active. When the Partition is active, Darwin-Bootloader can find you OSx.

Link to comment
Share on other sites

Hi guys. I had to continue experimenting over the weekend because the trick with -v only worked only once because the filesystem of my main install on the internal SATA HD was f**ked up at that time. As soon as the FS was fixed and Mac OS would recognize it again, starting from USB would again not work. The Mac OS x86 partiton on my USB is set to active. It does not matter if using Acronis Bootloader or Grub. Both get me into the darwin BL on my USB just fine, the darwin BL displays the name of the USB install, booting starts but hangs at a certain point. Even when I renamed my main install's System folder etc. before booting would never go through all the way. The only thing that works is when I hide the partition of my main Mac OS install on my internal HD with Paragon Partition Manager (I use the DOS version from my DOS boot partition) - then Mac OS x86 (10.4.7) boots just fine from USB (the Mac OS partiton on my internal drive is not even set to active because I boot via the NTLDR on partiton 0).

 

Anyway, I could narrow down the problem, here it is:

 

the IO Service AppleACPIPlatform.kext cannot get a boot device from the AppleACPIPCI.kext-PlugIn loaded inside of it, which is waiting for the ID of the device to load from the IOUSBMassStorage.kext. That's where the OS gets confused about where to continue booting. You guys have not made a second install to boot from an external USB drive. You are very welcome to experiment with a parallel USB install :) !!

 

The 10.4.8 combo update contains updated versions of both kexts mentioned above, so at some point in time I will continue to try and solve this by updating the kexts. For now I can sort of live with being able not just to install new releases on my external USB-HDs for testing but also to boot from them.

 

That way I:

 

a. don't waste HFS-space just sitting on my Laptop's internal HD, and

b. am always on the safe side because I do not need to mess with my working system when checking new things out :thumbsdown_anim:

 

Cheers,

Bugs.

 

PS: this is the entry from Grub's MENU.LST which boots me into Mac OS x86 on my USB:

title Mac OS x86 SATA USB
rootnoverify (hd1,0)
makeactive
chainloader /chain0

Link to comment
Share on other sites

The only thing that works is when I hide the partition of my main Mac OS install on my internal HD with Paragon Partition Manager [...] then Mac OS x86 (10.4.7) boots just fine.

When using the acronis os selector, did you try to hide 'internal' osx?

In the menu, on selecting the osx icon (the one on your usb), go into Properties, and go in the Partitions section: there you can select to have the 'internal' osx hidden. Maybe that could work.

 

Or in grub, add a line to hide that internal hd partition.

e.g, if your 'internal' osx is on the second partition of first drive (hd0,1):

title Mac OS x86 SATA USB
hide (hd0,1)
rootnoverify (hd1,0)
makeactive
chainloader /chain0

 

Later remember to unhide (hd0,1) to boot to it again.

 

the IO Service AppleACPIPlatform.kext cannot get a boot device from the AppleACPIPCI.kext-PlugIn loaded inside of it, which is waiting for the ID of the device to load from the IOUSBMassStorage.kext. That's where the OS gets confused about where to continue booting.

kexts are loaded that early with the bootloader?

Strange that it can identify the device, a partition on it, and the osx signature, but gets confused.

Link to comment
Share on other sites

Hi cbmkgd.

When using the acronis os selector, did you try to hide 'internal' osx?
:censored2: yes I found that a while ago, but when hiding the internal osx the external wouldn't boot at all, not even darwin would pop up (forgot the error, though). Also tried everything else under "properties" step-by-step, like changing the drive order manually etc., but none of that helped.
Or in grub, add a line to hide that internal hd partition.

e.g, if your 'internal' osx is on the second partition of first drive (hd0,1):

title Mac OS x86 SATA USB
hide (hd0,1)
rootnoverify (hd1,0)
makeactive
chainloader /chain0

Later remember to unhide (hd0,1) to boot to it again.

interesting, thanks for the hint, I will try that.
kexts are loaded that early with the bootloader?

Strange that it can identify the device, a partition on it, and the osx signature, but gets confused.

yes, really strange. Hopefully that bug has been cleared out with the update of these kexts.

 

I'll let you know once I have tried the hide parameter respectively the kexts.

Link to comment
Share on other sites

but when hiding the internal osx the external wouldn't boot at all, not even darwin would pop up (forgot the error, though). Also tried everything else under "properties" step-by-step, like changing the drive order manually etc., but none of that helped.

Was it our dearest "HFS+ error"?

But when hiddingn with paragon's tool, it does works? Hmmm... I'd like to know what paragon can do more and how.

Link to comment
Share on other sites

hiding partition 2 on my first disk with Grub at first freaked me out all the way, because Grub did not recognize the HFS-AF partition as a partition at all and - hid my third partition, which is the extended partiton with Win2k, my Data & Applications partiton, and WinXP - all of a sudden just one huge yellow bar anymore in Partition Magic! Luckily after doing unhide with Grub everything showed up again - sigh .. ! So I quickly removed the hide command again. Didn't wanna try hide 0 because that would have hidden my boot partiton I am sure.

 

As I said I am booting with

title Mac OS x86 SATA USB
rootnoverify (hd1,0)
makeactive
chainloader /chain0

because any other method without chain0 produces errors (yes, one of which is the "famous HFS+ error" - any solution for that? I read "copying some darwin files" - what is meant by that?). The disadvantage of that is that the partiton where chain0 sits (first partition on the external HD with FAT32) is made active by makeactive. Does makeactive have parameters, e.g. makeactive (hd1,0)? Maybe that would help - chain0 loads from part0, but part1 with Mac OS x86 is made active.

 

I have not yet dared to mess with the kexts I mentioned . . .

Link to comment
Share on other sites

@BugsBunny,

 

I have been using a tool called Smart Boot Manager. It does not require a partition to hold it. It installs in the first track of your first hard drive or you can keep it on a floppy and boot from there. Here is a pointer to a location for it: http://sourceforge.net/projects/btmgr/

 

You may also be interested in the "Ultimate Boot CD" tool, if for no other reason than it contains the latest version (3.7) of SMart Boot Manager and will install it on your hard drive if you wish. A source for that is at: http://www.ultimatebootcd.com/

 

I have 2 copies of OSX installed on my hard drive. One for maintenance and backup functions and the other for normal usage. SMB remembers the last system you started and will restart it after a time out if you don't press any keys. When I need to switch systems I use the cursor key to highlight the system I want and press F4 to activate that partition - then press enter.

 

The only drawback I can see is that I have not been able to get it to look at my external USB drive. I am still working on getting the USB drive to boot.

Link to comment
Share on other sites

Hi BladeRunner, thanks for the tip.

 

I just changed the topic title to "dual-boot 2 installs of Mac OS x86 on one machine - internal & USB" so it's more clear because booting another non-USB install ist no problem. I do not want to waste that much space on my Laptop's internal HD, that's why USB for the 2nd install.

 

Anyway, thanks for the links and good luck in teaching Smart Boot Manager USB .. :)

 

Cheers,

Bugs

Link to comment
Share on other sites

  • 9 months later...

I got my two installs of osx and one of xp working on a single sata drive using cbmkgd's acronis boot disk method. It looks like the reason I was having trouble is that I first installed osx in vmware and used linux to disk dump (dd if=/dev/hda1.....) that single vmware install to 2 partitions. Guess it confused darwin. Anyways, thanks chmkgd for the info.

Link to comment
Share on other sites

 Share

×
×
  • Create New...