InfiniteMac OSx86

InfiniteMac OSx86 (http://infinitemac.com/forum.php)
-   10.X (http://infinitemac.com/forumdisplay.php?f=36)
-   -   Best way to dual boot Leo & Snow Leo with Chameleon RC3? (http://infinitemac.com/showthread.php?t=4009)

thorazine74 09-10-2009 12:20 PM

Best way to dual boot Leo & Snow Leo with Chameleon RC3?
 
I'm testing Snow Leo like mostly everybody else here. I'm currently booting SL from a USB stick, but I would prefer to just use the same chameleon loader I'm using for Leopard, how do you think is the best way to achieve this?
I understand Chameleon RC3 has support for loading a different set of extensions for 10.5 and 10.6 automatically but I tested this and never worked for me, probably because I did it wrong, most likely because that feature (like many of the great chameleon's features) is not documented or explained anywhere.
Did anyone manage to do that succesfully?
Alternatively I could always resort to putting 10.5 extensions in Chameleon's extra and 10.6 extensions in SnowLeo's S/L/E, but how do I go about chameleon's boot.plist? Can Chameleon RC3 read a different boot.plist apart from the one in extra?

My setup for now is like this:

Disk1 (MBR):
BootIt (FAT32)
Vista(NTFS)
Leopard+Chameleon(HFS)
Data(NTFS)
Fedora 11(EXT)

Disk2 (GPT)
TimeMachine+Data (HFS)
SnowLeo (HFS)

mormegil 09-10-2009 02:12 PM

I don't really see the point in those 10.5/10.6 folders. You can just put your kexts in /E/E folder on each partition. You need to have multiple Extra folders anyway to put your Boot.plist, smbios.plist etc.

Then just have this in your boot plists: rd=diskXsY boot-uuid=XXX

DocShadow 09-10-2009 05:36 PM

Agree with moremegil ... keep it simple.

I had Leo and SL on different drives. Each drive had the /Extra folder which contained the boot and smbios plists for that install.

I originally had Chame loaded on the Leo drive. At the Chame sceen, I would press a key and select the install (Leo or SL) that I wanted to bootup.

thorazine74 09-11-2009 08:19 AM

I thought the \Extra folder is always read from the \boot partition. So can I have something like this:

Leopard partition:
\boot
\Extra\boot.plist for 10.5
\Extra\Extensions for 10.5

SnowLeo partition:
\Extra\boot.plist for 10.6
\Extra\Extensions for 10.6

mormegil 09-11-2009 08:43 AM

Yep.. and don't forget to put the boot flags in your SL boot.plist or else your kexts will be loaded from Leo's /E/E folder instead.

rd=diskXsY in your Leo's boot.plist is optional since it's the boot partition and kexts will be loaded from there by default.

thorazine74 09-11-2009 12:08 PM

Well it didnt work so I guess I did something wrong, kexts got loaded from both partitions...

This is my disk layout:
Code:

/dev/disk0
  #:                      TYPE NAME                    SIZE      IDENTIFIER
  0:      GUID_partition_scheme                        *232.9 Gi  disk0
  1:                        EFI                        200.0 Mi  disk0s1
  2:                  Apple_HFS Data HFS+ 232g          211.6 Gi  disk0s2
  3:                  Apple_HFS Snow Leopard            20.9 Gi    disk0s3
/dev/disk1
  #:                      TYPE NAME                    SIZE      IDENTIFIER
  0:    FDisk_partition_scheme                        *931.5 Gi  disk1
  1:            Windows_FAT_32 BOOT_FAT32              8.0 Gi    disk1s1
  2:                  Apple_HFS Leopard HFS+ 100g      100.0 Gi  disk1s2
  3:              Windows_NTFS Vista NTFS 100g        100.0 Gi  disk1s3
  4:              Windows_NTFS Data NTFS 650g          650.0 Gi  disk1s5
  5:                      Linux F11 EXT3 74g          73.5 Gi    disk1s6
/dev/disk2
  #:                      TYPE NAME                    SIZE      IDENTIFIER
  0:    FDisk_partition_scheme                        *232.9 Gi  disk2
  1:              Windows_NTFS External NTFS 232g      232.9 Gi  disk2s1

Chameleon's RC3 boot is in disk1s2.
I put this in disk0s3\Extra\com.apple.Boot.plist
Code:

<string>arch=i386 rd=disk0s3 boot-uuid=A39F7118-2705-3C16-9B74-77D5FDF72EFD "Graphics Mode"="1680x1050x32"</string>
disk1s2 Boot.plist is just:
Code:

<string>"Graphics Mode"="1680x1050x32"</string>
disk0s3 is Snow, boot-uuid refers to Snow partition.
When booting from disk1s2 (Leo) choosing Snow in Chameleon's menu, Chameleon reads kexts from both Leo & SnowLeo Extra folders, and completely ignores Boot.plist from SnowLeo (i.e. boots in 64 bits).
What do I do wrong?
I dont understand what rd= and boot-uuid= refers to, is it the same or different things?

thorazine74 09-11-2009 12:08 PM

Well it didnt work so I guess I did something wrong, kexts got loaded from both partitions...

This is my disk layout:
Code:

/dev/disk0
  #:                      TYPE NAME                    SIZE      IDENTIFIER
  0:      GUID_partition_scheme                        *232.9 Gi  disk0
  1:                        EFI                        200.0 Mi  disk0s1
  2:                  Apple_HFS Data HFS+ 232g          211.6 Gi  disk0s2
  3:                  Apple_HFS Snow Leopard            20.9 Gi    disk0s3
/dev/disk1
  #:                      TYPE NAME                    SIZE      IDENTIFIER
  0:    FDisk_partition_scheme                        *931.5 Gi  disk1
  1:            Windows_FAT_32 BOOT_FAT32              8.0 Gi    disk1s1
  2:                  Apple_HFS Leopard HFS+ 100g      100.0 Gi  disk1s2
  3:              Windows_NTFS Vista NTFS 100g        100.0 Gi  disk1s3
  4:              Windows_NTFS Data NTFS 650g          650.0 Gi  disk1s5
  5:                      Linux F11 EXT3 74g          73.5 Gi    disk1s6
/dev/disk2
  #:                      TYPE NAME                    SIZE      IDENTIFIER
  0:    FDisk_partition_scheme                        *232.9 Gi  disk2
  1:              Windows_NTFS External NTFS 232g      232.9 Gi  disk2s1

Chameleon's RC3 boot is in disk1s2.
I put this in disk0s3\Extra\com.apple.Boot.plist
Code:

<string>arch=i386 rd=disk0s3 boot-uuid=A39F7118-2705-3C16-9B74-77D5FDF72EFD "Graphics Mode"="1680x1050x32"</string>
disk1s2 Boot.plist is just:
Code:

<string>"Graphics Mode"="1680x1050x32"</string>
disk0s3 is Snow, boot-uuid refers to Snow partition.
When booting from disk1s2 (Leo) choosing Snow in Chameleon's menu, Chameleon reads kexts from both Leo & SnowLeo Extra folders, and completely ignores Boot.plist from SnowLeo (i.e. boots in 64 bits).
What do I do wrong?
I dont understand what rd= and boot-uuid= refers to, is it the same or different things?

mormegil 09-11-2009 01:46 PM

Think there's a bug in RC3 where boot.plist in /L/P/S takes precedence over /Extra. Try copying your plists there

DocShadow 09-11-2009 06:59 PM

Quote:

Originally Posted by mormegil (Post 34410)
Think there's a bug in RC3 where boot.plist in /L/P/S takes precedence over /Extra. Try copying your plists there

Hmmmm..... did not know that. :eek:

I have a boot.plist in /Extra on both my Leo and SL. The boot.plist on each drive contains the boot-uuid= the UUID for either the Leo or the SL drive.

My SL drive is my main boot drive, although I have Cham on both drives, and when Cham boots up it goes into SL by default or to the Leo if I choose.

About to delete Leo .... see no need for it now that SL's been stable for a while and I have a SL backup.

thorazine74 09-16-2009 09:52 AM

I'll try that when I get a chance, but without being able to load a different set of kexts for Leo & SnowLeo we still have to put SnowLeo kexts on /S/L/E instead of on /E/E, not the best cleanest solution...

thorazine74 09-17-2009 12:15 PM

In case anyone's interested I managed to get a dual boot working with this layout:

/boot
/Extra/com.apple.Boot.plist
/Extra/smbios.plist
/Extra/DSDT.aml
/Extra/Extensions/*.kext ---> These ones loaded only for Leopard
/Extra/10.6/Extensions/*.kext ---> These ones loaded only for Snow Leopard

Thats the partition with Leopard installed, no /Extra in SnowLeo partition.
Currently there is no way I know of to have a different com.apple.Boot.plist for Leopart and Snow Leopard with Chameleon (in Extra).
Now I have to find out why VoodooPS2 stopped working in Leopard, but thats another story...

sk1nhd33t 09-17-2009 07:42 PM

maybe this could help too.

this is how my backup OS layout looks like on RC3. though it works, my main OS (disk0) is still on RC1+EFI10.1 because of the multiple sound assertion im getting on RC3.

installed on a hidden EFI partiton w/ no Extra folder on both OS/partition.

http://i30.tinypic.com/315gx9y.png

disk0 is my main OS, disk1 is the pictured above.

Code:

/dev/disk0
  #:                      TYPE NAME                    SIZE      IDENTIFIER
  0:      GUID_partition_scheme                        *640.1 GB  disk0
  1:                        EFI                        209.7 MB  disk0s1
  2:                  Apple_HFS SnowLeopard            619.7 GB  disk0s2
  3:                  Apple_HFS Backup|OS              20.0 GB    disk0s3
/dev/disk1
  #:                      TYPE NAME                    SIZE      IDENTIFIER
  0:      GUID_partition_scheme                        *1.0 TB    disk1
  1:                        EFI                        209.7 MB  disk1s1
  2:                  Apple_HFS PowerHack              984.7 GB  disk1s2
  3:                  Apple_HFS Leo|Backup              15.0 GB    disk1s3


thorazine74 09-18-2009 09:06 AM

Thanks, I think I understand how it works now.
The published 10.5/10.6 folders work as advertised if you are booting from EFI System Partition (or probably in a separate boot partition, if you have Chameleon installed in the OS partition, the 10.5 or 10.6 folder doesnt work.

mitchde 09-18-2009 12:08 PM

Can someone explain that rdisk= with boot-uuid= for an dual boot LEO / SNOW

for example:
disk0s1 is Leo , active (standard boot disk), uuid= AAAAA
disk0s2 is Snow Leo, not active (F8>Snow), uuid= BBBBB

What i cant understand is why both are needed, or is rdisk= more urgent for that dual boot problem ?
If from LEO partition is bootet (LEO is active) , does Chameleon loads all of that stuff(/EXTRA) BEFORE i set by F8 booting Snow Leo from other disk ?!

Thanks
I made that dual boot by having noting special (snow leo/leo) in the /EXTRA/Extensions , also no .mkext. All special kext (Leo vs SL) i put the their own System/Extensions

mormegil 09-18-2009 01:10 PM

I didn't have to use rdisk flag when I was using netkas's 10.1. Just needed boot-uuid that's all.

After RC3, it didn't work. Kexts were only being loaded from active partition. I guess it's due to MBR/GPT difference (I'm using MBR).

mitchde 09-19-2009 06:37 AM

"Kexts were only being loaded from active partition."
Thats excat what i am thinking.
Can here the rdisk= help ?

Also i get confused by an other .plist entry i seen(never used):
<key>Default Partition</key>
<string>hd(0,2)</string>
Is that the partition which CH will boot from, even if its NOT active ?
What is the depency of Default Partition= and rdisk= ?
I believe, if Cham RC2/3 has not an bug in bootpart, the luck maybe in the correct usage of that two :
rdisk= and Default Partition=

How to use it for that example:
disk0s1 is Leo , active (active boot disk), uuid= AAAAA
disk0s2 is Snow Leo, not active (F8>Snow), uuid= BBBBB
Thanks!

EDIT: I posted this question also on the Chameleon RC3 homepage postings (looking for CH heros ;) )

mormegil 09-19-2009 09:00 AM

Yeah. rd=diskXsY flag is for those with mbr scheme I think. No such thing as active partition in GPT, am I right?

"Default Partition" is just that: the default partition Chameleon will be set to boot. If it's not set, default will be the active partition. If youre on GPT scheme, the partition Chameleon is installed to will be default? So yes, in your case if you want Snow to boot by default you will need it.

So, boot-uuid flag is for GPT, rd=diskXsY is for MBR I think. Thats only for RC3 anyway. I still use both though.. no harm done.

mitchde 09-19-2009 02:11 PM

Thanks.
But for what is that 10.5 and 10.6 subfolders in /EXTRA ?
I (will) not use that, becaue Chameleon should use that /EXTRA from active partition (Chameleon boot device menue not used) OR use , after selecting other boot device in Chameleon boot menue , that /EXTRA i selected in the boot menue .

So 10.5 / 10.6 subfolders may an SIGN, that Chameleon cant/does not reload /EXTRA stuff when selecting an different device for booting in the Chameleon main menue.
So maybe wrong /EXTRA content is used - that content from the active partition.

mormegil 09-19-2009 05:14 PM

Quote:

Originally Posted by thorazine74 (Post 35186)
Thanks, I think I understand how it works now.
The published 10.5/10.6 folders work as advertised if you are booting from EFI System Partition (or probably in a separate boot partition, if you have Chameleon installed in the OS partition, the 10.5 or 10.6 folder doesnt work.

Think it's this. For those booting off EFI partition or usb drive. Makes for more of a vanilla setup without Extra folder in root. Not really essential to use though.

mitchde 09-20-2009 11:00 PM

Netkas has released his PC EFI 10.3 (Chameleon RC3 + some features Minus some bugs)
http://netkas.org/?p=224#comments
I will use that (i used 10.1 with success).

thorazine74 09-21-2009 11:29 AM

I assumed rd=disk1s2 and boot-uuid=xxx referes to the same thing, the partition being booted, but rd is not absolute (will change if you shuffle disks or remove partitions) and boot-uuid is absolute (will never change unless you reformat the partition).
I think the problem in chameleon is that is adapted to booting from EFI and does not take into account other situations like booting from MBR.
The docs says: "The boot: prompt waits for you to type advanced startup options. If you don't type anything, the computer continues starting up normally. It
uses the kernel and configuration files on the startup device, which it also uses as the root device."
Using linux terms as an analogy:
startup device - boot partition - /boot/grub - /Extra/Extensions
root device - system partition - /(root) - /System/Library/*
If you have chameleon installed to EFI System Partition, system partition is always different, but in a typical MBR installation chameleon's boot and root partition are the same, but if you have snow leo and leopard, depending what you select to boot they could be the same and different.

monsieur.d 09-22-2009 09:24 AM

Thanks for this thread.

I got a working Leo + Snow Leo working.

After I installed Netkas' EFI 10.3, it seems that it is loading the extensions from /Extra/Extensions ONLY from the booted partition, making it easier to dual boot.

That is, on the Leopard partition I have a /Extra/Extensions with Leopard's extensions. On the Snow Leopard partition, there is a different /Extra/Extensions with Snow Leopard's extensions.

If someone is having trouble with Chameleon 2 RC3, try using EFI 10.3 "/boot" file.

mitchde 09-22-2009 11:57 AM

I also prefer PC EFI 10.x (but its chameleon based, so you will miss nothing, only bugfixed + add features (ATI video rom support added).

lotus260 09-30-2009 07:54 AM

Can't Netkas pass modifications back to Chameleon?
In this way an unified source tree can be maintained (by them).

PS: I have the same problem with dual boot. I will try "monsieur.d"s way once I go home. and update this.

Update: 2009-10-04
Yes it worked.
Chameleon with Leopard partition
Snow booting with Snow/Extra/Extensions

thorazine74 10-01-2009 09:10 AM

I tried netkas pcefi 10.3 as suggested by monsieur.d and it worked, it only loads the extensions from the chosen partition.
Now only problem is DSDT and smbios.plist, those files are still always loaded from the boot partition anyway. No big deal with smbios, but my mobo needs a DSDT file for Leo and none for Snow...

monsieur.d 10-01-2009 09:34 AM

Hi Thorazine,

Have you tried deleting DSDT from /Extra and putting the 2 different versions in the root of each partition (SL, Leo)?

Good luck with that.

I have finally found a stable way to dual-boot Leo and SL and am very happy with my HackPro now.