Macbook pro triple-boot
From CCRMA Wiki
Tutorial/Walk-through: Triple-Boot Mac OS X - Windows XP - Fedora Core 8 Linux => Macbook Pro rev E
This page documents my process for configuring a triple-boot Macbook Pro with OS X 10.5.2, MS Windows XP SP2/Media Center, and Fedora Core 8/PlanetCCRMA. I carried out this procedure March 10-11 2008 successfully, relying on information from a number of older triple-boot web-links that I found via Google (see Links below). This installation was done on a factory-fresh new Rev. E model purchased on February 26, 2008 with the following specs:
- Intel Core 2 Duo at 2.6 GHz
- 4GB RAM
- 200GB 7200RPM HDD
- 800MHz FSB, 6 MB shared L2 cache
- NVIDIA GeForce 8600M GT with 512 MB GDDR3 memory
- 8x Double-layer SuperDrive
- LED Backlit 15.4" - 1440x900 resolution (16:10 aspect ratio)
- Matte display
- new Multitouch trackpad
- Airport Extreme (802.11n) and Bluetooth
First I'll describe the process that worked and then will describe what didn't:
Successfull Procedure: Second attempt (3/12/2008)
- Start here if you FUBAR your HD...
- wipe drive: Completely wipe data and restart with 1 full partition (same as default Apple setup)
- install OS X
- Start HERE if you have new machine...
- Download and install rEFIf
- bless rEFIt - (NOTE: after certain steps below, it was necessary (as the boot-loader didn't appear on restart) to re-bless rEFIt by re-running the shell script)
robert-hamiltons-macbook-pro:refit rob$ ./enable.sh + sudo bless --folder /efi/refit --file /efi/refit/refit.efi --labelfile /efi/refit/refit.vollabel Password:
- resize and create partitions in Apple's GUI Disk Utility this time in OS X (NOTE: that in earlier installation attempts, I used command-line "distutil resizeVolume" which worked as well):
robs-macbook-pro:~ rob$ diskutil list /dev/disk0 #: TYPE NAME SIZE IDENTIFIER 0: GUID_partition_scheme *186.3 Gi disk0 1: EFI 200.0 Mi disk0s1 2: Apple_HFS Macintosh HD 145.3 Gi disk0s2 3: Apple_HFS Linux 19.7 Gi disk0s3 4: Apple_HFS Windows 20.6 Gi disk0s4 robs-macbook-pro:~ rob$ diskutil resizeVolume disk0s4 20.6G "MS-DOS FAT32"
- try fixmbr from windows recovery prompt - didn't work
- ah! this worked now (see previous attempt), but only because either I switched my shell in OS X to tcsh, or because I ran as root (didn't confirm which made it work)
One solution is to nuke the first bit of the windows partition with zeros, destroying the filesystem metadata. This causes the Windows installer to see the partition as type "unknown", and it will then dutifuly offer to reformat it for you. This can be accomplished with the following, where rdisk0s3 is your windows partition (typically this would be either rdisk0s3 or rdisk0s4) dd if=/dev/zero of=/dev/rdisk0s4 bs=1m count=100
- now installing win xp
- reboot and hold down alt/option
- configure windows
- crazy flashing "Installing applications..." window: "Please wait up to 30 minutes for the installation to complete... Do not press any keys during installation" C:\WINDOWS\system32\cscript.exe
- reboot into windows
- current issue... how to install mac drivers... how do you get them from Bootcamp? ne marche pas? how to make driver disk from bootcamp? no options to do so
- ah, boot into windows, install disk 1 from Apple OS X installation discs... prompts you to install Apple Software Update for Windows
- SUCCESS! Windows is... installed (success?) lol
- Note: Apple drivers seem to work extremely well. More later.
Fedora 8 Install
installed Fedora 8 on sda3 formatted as ext3
- when prompted "on which drive will you install..." etc. choose "Renew and Modify Partitioning Layout"
- select 2nd partition, currently formatted HFS+ (1st main partition is HFS+ for OS X, last partition is FAT32 for Windows XP)
- edit this partition to use ext3 formatting and to boot from "/"
- NOTE: no swap partition or boot partition are configured here. With 4GB RAM, no swap should be necessary (also, other sources state there is a 4 partition limit which MBR can deal with... not willing to test this out right now, maybe later? Hopefully I'll setup a swap file instead, more on that when I do it.
seems to work. damn.
- Next step is to install planet CCRMA
- issue with booting into PlanetCCRMA: http://article.gmane.org/gmane.comp.audio.planetccrma.general/7558
- answers here too: http://article.gmane.org/gmane.comp.audio.planetccrma.general/7587
- NVIDIA GeForce 8600M GT with 512MB
- LIVNA repository:
rpm -ivh http://rpm.livna.org/livna-release-8.rpm rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-livna yum install kmod-nvidia
Type "sh NVIDIA-Linux-x86-169.12-pkg1.run" to install the driver. NVIDIA now provides a utility to assist you with configuration of your X config file. Please see Chapter 3 of the README or run 'man nvidia-xconfig' for details on usage. Instructions for those wishing to edit their X config file by hand can also be found in the README.
Before you begin the installation, exit the X server and terminate all OpenGL applications (note that it is possible that some OpenGL applications persist even after the X server has stopped). You should also set the default run level on your system such that it will boot to a VGA console, and not directly to X. Doing so will make it easier to recover if there is a problem during the installation process.
Thoughts for the future...
Windows Vista 64-bit version can use EFI, which could make the whole partitioning scheme easier?
giving up on Vista 64-bit now, damn non-free Vista... XP/MBR it is
First Try (fail)
- start with new factory-fresh Macbook Pro (15", 2.6ghz, 200GB 7200rpm HDD, 4GB RAM, NVIDIA GeForce 8600M GT/512MB, OS X 10.5.2)
- made bootable rEFIt 0.11 disk
- Install Boot-camp; Run the Boot Camp Assistant and create the Windows XP driver cd.
* Go into Applications/Utilities * Open Boot Camp Assistant. Print out the Instructions. * Partition the drive by using the graphical slider in the Assistant and Accept the changes. Insert the XP disk. Let it reboot your system. It will load up into the XP installer. Install XP. After it is all installed and setup and you are in Windows, put in your Leopard disk and the drivers will install for all the devices( mouse, mic, iSight, video, etc). You are done.
- "diskutil list"
robert-hamiltons-macbook-pro:Desktop rob$ diskutil list /dev/disk0 #: TYPE NAME SIZE IDENTIFIER 0: GUID_partition_scheme *186.3 Gi disk0 1: EFI 200.0 Mi disk0s1 2: Apple_HFS Macintosh HD 186.0 Gi disk0s2
186.3 (total) = disk0s2 146G "MS-DOS FAT32" "Linux" 20G "MS-DOS FAT32" "Windows" 20G
sudo diskutil resizeVolume disk0s2 146.3G "Linux" "Linux" 20G "MS-DOS FAT32" "Windows" 20G
- enable root user now using "Directory Utility" ("Edit" menu > "Enable Root User...") in Applications/Utilities
- NOTE: some guides here say type "Linux" "Linux"... but I get error saying "Linux does not appear to be a valid file system fomat. Valid filesystems: "Journaled HFS+" "HFS+" "Case-sensitive HFS+" "Case-sensitive Journaled HFS+" "HFS" "MS-DOS FAT16" "MS-DOS FAT32" "MS-DOS FAT12" "MS-DOS" "UDF" "UFS" "ZFS"
sh-3.2# sudo diskutil resizeVolume disk0s2 146G "MS-DOS FAT32" "Linux" 20G "MS-DOS FAT32" "Windows" 20G Started resizing on disk disk0s2 Macintosh HD Verifying Resizing Volume Adjusting Partitions Formatting new partitions Formatting disk0s4 as MS-DOS (FAT32) with name Windows Formatting disk0s3 as MS-DOS (FAT32) with name Linux [ + 0%..10%..20%..30%..40%..50%..60%..70%..80%..90%..100% ] Finished resizing on disk disk0 /dev/disk0 #: TYPE NAME SIZE IDENTIFIER 0: GUID_partition_scheme *186.3 Gi disk0 1: EFI 200.0 Mi disk0s1 2: Apple_HFS Macintosh HD 145.9 Gi disk0s2 3: Microsoft Basic Data LINUX 20.0 Gi disk0s3 4: Microsoft Basic Data WINDOWS 20.1 Gi disk0s4
robert-hamiltons-macbook-pro:~ rob$ diskutil list /dev/disk0 #: TYPE NAME SIZE IDENTIFIER 0: GUID_partition_scheme *186.3 Gi disk0 1: EFI 200.0 Mi disk0s1 2: Apple_HFS Macintosh HD 145.9 Gi disk0s2 3: Microsoft Basic Data LINUX 20.0 Gi disk0s3 4: Microsoft Basic Data WINDOWS 20.1 Gi disk0s4
- Windows XP install begins
- "To set up Windows XP now, press ENTER"
190780 MB Disk 0 at Id 0 on bus 0 on atapi [MBR] F: Partition1 [Unknown] 200 MB < 200 MB free> G: Partition2 [Unknown] 149376 MB < 149376 MB free> Unpartitioned space 128 MB C: Partition3 <LINUX> [FAT32] 20480 MB < 20469 MB free> D: Partition4 <WINDOWS> [FAT32] 20598 MB < 20587 MB free>
- here I chose "D:" for my windows Install... but then ran into problems... probably my first of many mistakes... Windows seems to be having problems... drink a scotch and see if it works better...
- enabled rEFIt... installed by double-click... then "cd /efi/refit"... "./enable.sh"
- poked around online and read a bit
- booted back into OS X and used Disk Utility to wipe the Windows partition... lets try again...
- re-installing Win XP... this time will try C: drive... strange because I read it has to be last partition and I thought the D: was last... maybe my windows will be named Linux and my Linux will be named Windows
- ahhh this is interesting: ( http://wiki.onmac.net/index.php/Talk:Triple_Boot_via_BootCamp )
While attempting to manually partition my disk for tripple boot (J-HFS+, J-HFS+, FAT-32), I ran into a situation where the windows installer would see the target partition as type "FAT-32" instead of "unknown", and so would not offer to reformat it prior to installation. Consequently, the windows partition was not bootable, and I received "Disk error" any time I tried to boot from it. One solution is to nuke the first bit of the windows partition with zeros, destroying the filesystem metadata. This causes the Windows installer to see the partition as type "unknown", and it will then dutifuly offer to reformat it for you. This can be accomplished with the following, where rdisk0s3 is your windows partition (typically this would be either rdisk0s3 or rdisk0s4) dd if=/dev/zero of=/dev/rdisk0s4 bs=1m count=100 Another solution that worked for me is to specify an invalid filesystem type for the windows partition when using diskutil resizeVolume. This allocates the space, but the MBR doesn't flag it as FAT-32, so the Windows installer again offers to reformat it at install time.
- ok, so resized Linux and Windows partitions to Mac OS Extended (Journaled) using Disk Utility in OS X
robert-hamiltons-macbook-pro:~ rob$ diskutil list /dev/disk0 #: TYPE NAME SIZE IDENTIFIER 0: GUID_partition_scheme *186.3 Gi disk0 1: EFI 200.0 Mi disk0s1 2: Apple_HFS Macintosh HD 145.9 Gi disk0s2 3: Apple_HFS LINUX 19.9 Gi disk0s3 4: Apple_HFS WINDOWS 20.0 Gi disk0s4
- try back on D: drive again... now Windows should
- ah, but don't want that, just want to use "diskutil resizeVolume"... so maybe this won't work quite yet...
- back to this format:
robert-hamiltons-macbook-pro:~ rob$ diskutil list /dev/disk0 #: TYPE NAME SIZE IDENTIFIER 0: GUID_partition_scheme *186.3 Gi disk0 1: EFI 200.0 Mi disk0s1 2: Apple_HFS Macintosh HD 145.9 Gi disk0s2 3: Apple_HFS LINUX 19.9 Gi disk0s3 4: Microsoft Basic Data WINDOWS 20.0 Gi disk0s4
Disk Utility Tool Usage: diskutil resizeVolume MountPoint|DiskIdentifier|DeviceNode size [part1Format part1Name part1Size part2Format part2Name part2Size part3Format part3Name part3Size ...] Non-destructively resize a disk. You may increase or decrease its size. When decreasing size, you may optionally specify new partitions to create to fill the newly-freed space. Specify these new partitions as in the diskutil partitionDisk command. Ownership of the affected disk is required. Valid sizes are a floating-point number with a suffix of B(ytes), S(512-byte- blocks), K(ilobytes), M(egabytes), G(igabytes), T(erabytes), P(etabytes), or %(percentage of the total size of the whole disk containing the volume). Example: 10G (10 gigabytes), 4.23T (4.23 terabytes), 5M (5 megabytes). resizeVolume is only supported on a Journaled HFS+ filesystem. A size of "limits" will print the valid range for the current filesystem. Examples: diskutil resizeVolume disk1s3 limits diskutil resizeVolume disk1s3 60G diskutil resizeVolume disk1s3 60G JHFS+ HDX1 1G MS-DOS HDX2 1G Valid filesystems: "Journaled HFS+" "HFS+" "Case-sensitive HFS+" "Case-sensitive Journaled HFS+" "HFS" "MS-DOS FAT16" "MS-DOS FAT32" "MS-DOS FAT12" "MS-DOS" "UDF" "UFS" "ZFS" robert-hamiltons-macbook-pro:~ rob$ diskutil resizeVolume disk0s4 20G JHFS+
- but this gives me: "Volume format does not support resizing"
- ok... its late and i'm dead... will try this tomorrow: http://endlessparadigm.com/forum/showthread.php?tid=4842 part 3... installing Fedora then resizing Windows partition there to "Unformatted" so that windows can be installed there on last partition... so annoying... so very cold...
- time to clear out those partitions and try again:
sh-3.2# diskutil eraseVolume JHFS+ "Linux" disk0s3 Started erase on disk disk0s3 LINUX Erasing Mounting disk [ + 0%..10%..20%..30%..40%..50%..60%..70%..80%..90%..100% ] Finished erase on disk disk0s3 Linux sh-3.2# diskutil eraseVolume JHFS+ "Windows" disk0s4 Started erase on disk disk0s4 WINDOWS Erasing Mounting disk [ + 0%..10%..20%..30%..40%..50%..60%..70%..80%..90%..100% ] Finished erase on disk disk0s4 Windows
- Reboot with WinXP cd...
- Window's can't install on C: so delete partition in Win XP setup to unpartitioned space, then try again
Create partition of size (in MB): 190772
C: Partition1 [New (Raw)] 190772 MB (190771 MB free) Unpartitioned space 8 MB
Now Win wants to format the partition using NTFS... no... bad
Future things to try
- Windows Vista 64-bit install (uses EFI so easier process?)
- Parallels install: current online wisdom states that Parallels can fubar a non-bootcamp (or even a bootcamp) Windows install when mounted as a virtual source. Not willing to try this out just yet, soon maybe after some more research.
[root@localhost rob]# /sbin/chkconfig NetworkManager on [root@localhost rob]# /sbin/service NetworkManager start
[root@localhost rob]# yum install yakuake
yum install gsynaptics