SDB:PPC: MacOS X, Linux and MacOS 9 on the same machine
Version: 6.4
The installation of MacOS X requires a UFS partition on your hard drive.
Use the utility "Drive Setup" to create one. At least 1 GB is needed for MacOS X. The MacOS X Installer will create 3 partitions from this UFS partition: Appe_Boot, Apple_Loader and Appe_ UFS.
MacOS X will be booted from a HFS partition and can be launched with the os-chooser script. If all that is needed is a dual boot between MacOS X and Linux, use the partition number of the Apple_Boot MOSX_OF3_Booter partition. In this example it would be 11.
Partition map (with 512 byte blocks) on '/dev/hda' #: type name length base ( size ) 1: Apple_partition_map Apple 63 @ 1 2: Apple_Driver43*Macintosh 54 @ 64 3: Apple_Driver43*Macintosh 74 @ 118 4: Apple_Driver_ATA*Macintosh 54 @ 192 5: Apple_Driver_ATA*Macintosh 74 @ 246 6: Apple_FWDriver Macintosh 200 @ 320 7: Apple_Driver_IOKit Macintosh 512 @ 520 8: Apple_Patches Patch Partition 512 @ 1032 9: Apple_HFS Ohne Titel 1156669 @ 1544 (564.8M) 10: Apple_HFS Ohne Titel 2 126965 @ 1158213 ( 62.0M) 11: Apple_Boot MOSX_OF3_Booter 16384 @ 1285178 ( 8.0M) 12: Apple_Loader SecondaryLoader 1024 @ 1301562 13: Apple_UFS Mac_OS_X 1937853 @ 1302586 (946.2M) 14: Apple_UNIX_SVR2 Swap 296651 @ 3240439 (144.8M) 15: Apple_UNIX_SVR2 A/UX Root 6193875 @ 3537090 ( 3.0G) 16: Apple_UNIX_SVR2 Unreserved 1 2002145 @ 9730965 (977.6M)
Device block size=512, Number of Blocks=11733119 (5.6G) DeviceType=0x0, DeviceId=0x0 Drivers- 1: @ 64 for 23, type=0x1 2: @ 118 for 36, type=0xffff 3: @ 192 for 21, type=0x701 4: @ 246 for 33, type=0xf8ff
To boot more than 2 partitions, it is necessary to add some code to the os-chooser script.
The following script will boot MacOS X from partition 11 when you press "x", MacOS 9 from partition 9 when you press "m" and it boots Linux from partition 10 when you press "l". The usual os-chooser script is at the end of the file, giving one the choice between MacOS on partition 9, and Linux on partition 10, with the space bar.
<CHRP-BOOT> <COMPATIBLE> iMac,1 PowerMac1,1 PowerBook1,1 PowerMac2,1 PowerMac3,1 PowerBook2,1 PowerBook3,1 </COMPATIBLE> <DESCRIPTION> Linux/PPC Yaboot bootloader </DESCRIPTION> <BOOT-SCRIPT> " get-key-map" " keyboard" open-dev $call-method dup 20 dump 3 + c@ 10 = if " Booting MacOS X ..." cr " boot ultra0:11,\\:tbxi" eval then " get-key-map" " keyboard" open-dev $call-method dup 20 dump 2 + c@ 80 = if " Booting MacOS 9 ..." cr " boot ultra0:9,\\:tbxi" eval then " get-key-map" " keyboard" open-dev $call-method dup 20 dump 1 + c@ 01 = if " Booting Linux ..." cr " boot ultra0:10,\\yaboot" eval then " get-key-map" " keyboard" open-dev $call-method dup 20 dump 5 + c@ 08 = if " Booting MacOS ..." cr " boot ultra0:9,\\:tbxi" eval else " Booting Linux ..." cr " boot ultra0:10,\\yaboot" eval then </BOOT-SCRIPT> </CHRP-BOOT>
To break it down:
- Lines starting with " Booting MacOS X ..." should be pointing to the partition that the Apple_Boot MOSX_OF3_Booter is on.
- Lines starting with " Booting MacOS 9 ..." should be pointing to the partition that MacOS 9 is on.
- Lines starting with " Booting Linux ..." should be pointing to the partition that yaboot is on. (Not to the linux root partition.)
The Apple_Boot partition is (seems to be) in HFS format and can be mounted from the Linux side. However, it is not necessary to change anything there, so leave it untouched, please.
Apple_Loader contains binary data and can not be mounted.
The Apple_UFS partition can be mounted with
mount -t ufs -o ro,ufstype=44bsd /dev/hda11 /macos
Unfortunately, we have very little experience with the stability of UFS support in the Linux kernel. Write operations can be especially dangerous, and should be handled with care. It is very important to backup necessary data!
SDB:PPC: Booting with Yaboot on a PowerMacintosh
<keyword>ppc,powerpc,apple,macosx,mac,macintosh</keyword>