These instructions were prepared by Joe Elso. If you have any comments, send them to Matt.Gray at anu.edu.au and I'll pass them on. HOW TO TRIPLE BOOT YOUR INTEL MAC (MACOSX/WINXP/UBUNTU) ------------------------------------------------------- First, some important notes about Windows partitions: Due to limitations in Windows XP's disk manager, FAT32 partitions are normally limited to 32GB. If you want a larger FAT32 partition you can use fat32format (http://www.ridgecrop.demon.co.uk/index.htm?fat32format.htm). Alternatively, you can use NTFS instead. OSX mounts FAT32 read-write but NTFS read-only (which is better in terms of security). Confusingly, even if you use NTFS you must tell diskutil (see below) that the windows partition is of type "MS-DOS FAT32". --------------------------------- - install OSX as normal onto a single HFS+ (Journaled) partition. Don't worry about setting it up properly at this point as you may accidentally trash the disk later ;-) - (skip this step if you already have the drivers CD). Run the BootCamp Assistant and create the Windows XP driver CD. Then exit BootCamp. DO NOT PARTITION USING BOOTCAMP. If you already did, go back in and tell it to restore the startup disk to a single volume. - open a Terminal window and type "diskutil list". Take a note of the disk identifier of your Mac system volume (probably disk0s2). - insert your disk identifier into the following command (adjust partition sizes to your taste): sudo diskutil resizeVolume disk0s2 45G Linux Ubuntu 45G "MS-DOS FAT32" WinXP 45G - go to http://refit.sourceforge.net and download the Mac disk image - mount the rEFIt disk image and copy the efi directory therein to the root of your OSX volume. - open a terminal and cd into /efi/refit. Run the enable.sh script to install rEFIt. - (optional) Open /efi/refit/refit.conf with textedit to customise the boot menu. - now reboot to make sure rEFIt works - insert your Windows XP SP2 CD and reboot. Select the CD from the rEFIt menu. - Windows Setup will start. At the disk partition screen select the C: drive. "Quick partition" it as FAT32 or NTFS, as desired. Setup will continue and eventually it will restart your computer. - select the Windows HDD from the rEFIt menu in order to continue setting up Win XP. Repeat this procedure until Windows is fully installed. - boot up XP and insert the drivers CD created by BootCamp Assistant. The installer will auto-start. (NB: if it appears to hang, it probably means that there is a window waiting for your input, which is hidden behind another window - but be patient...it is Windoze after all). Tell it to "Continue Anyway" when it whinges about the driver not having passed Windows Logo testing. - Woo-hoo! You now have a dual-boot system. Now comes the scary part... - insert your Ubuntu install CD and reboot. Select it from the REFIt menu and then select "Start or install Ubuntu" (the default option). - open Applications->Accessories->Terminal - format the linux partition with an ext3 filesystem: sudo mke2fs -j /dev/sda3 - make a backup of the MBR: sudo dd if=/dev/sda of=/tmp/sda.mbr bs=512 count=1 - double-click on the Install icon on the desktop and start filling out the screens - in the partitioner select "Manually edit partition table" and skip over the next screen (the one that shows your current partition setup). - MAKE SURE THE "REFORMAT?" BOX IS NOT TICKED FOR ANY OF THE PARTITIONS and set up mount points as follows (you can't get past this screen until you have mount points assigned to all the partitions, even if you don't want them - sigh): sda1: /media/a sda3: / sda4: /media/b sda2: /media/c - let the install proceed. Ignore the whinging about there being no filesystem specified for partition #2 and the lack of a swap partition - click continue. When it finishes tell it to "Continue using the live CD" - go to the terminal window and type the following: sudo su - mkdir /mnt/ubuntu mount /dev/sda3 /mnt/ubuntu mount -t proc none /mnt/ubuntu/proc mount -o bind /dev /mnt/ubuntu/dev chroot /mnt/ubuntu /bin/bash - in a non-chrooted terminal, restore the MBR and make a copy of it for safe-keeping (don't be surprised if you have to restore from it again later): sudo dd if=/tmp/sda.mbr of=/dev/sda sudo cp /tmp/sda.mbr /mnt/ubuntu - in the chrooted terminal, create a swapfile and tell Ubuntu to use it: dd if=/dev/zero of=/swapfile bs=1024 count=2097152 mkswap /swapfile swapon /swapfile - enable it at boot time by editing /etc/fstab with a text editor like nano and adding the following line (each item is separated by tabs): /swapfile swap swap defaults 0 0 - while your editing /etc/fstab, this is a good time to remove the spurious mount points /media/a & /media/b that we were forced to create earlier (the third one was ignored because Ubuntu couldn't figure out the filesystem type) - now we need to set up some basic networking: sudo ifconfig eth0 netmask 255.255.254.0 sudo route add default gw 150.203.208.1 substituting the appropriate value for ip-address. NB: the command(s) may fail the first time, try again. - now some DNS. Edit /etc/resolv.conf with nano and put in this line: nameserver 150.203.208.14 - you should now have a working network in your chrooted environment. Test by doing some hostname lookups and pinging off-campus hosts (google.com.au is a good choice). - now we can get the lilo packages: apt-get update apt-get install lilo lilo-doc apt-get remove grub click OK on the screen that tells you that lilo needs to be configured - now open /etc/lilo.conf with nano and make it look like this: boot=/dev/sda3 default=Ubuntu map=/boot/map delay=1 image=/vmlinuz initrd=/initrd.img root=/dev/sda3 label=Ubuntu read-only - go back to the chrooted terminal and install lilo into the boot sector of the linux partition /sbin/lilo -v ignore warnings - but feel free to panic if it writes the boot sector somewhere other than /dev/sda3, as you may have hosed your entire setup ;-) - stop using the swapfile: swapoff /swapfile - exit out of the chrooted terminal and unmount all partitions: sudo umount /mnt/ubuntu/dev sudo umount /mnt/ubuntu/proc sudo umount /mnt/ubuntu - now reboot the machine (System->Quit). If everything has been done correctly, the rEFIt menu will be displayed with icons for all three operating systems. Try booting each - fingers crossed :-)