Matthew Frazier committed 08f69d5

committed an article I should have committed a long time ago

Comments (0)

Files changed (1)


+title: My Plans to Quad-Boot a Macbook Pro
+slug: my-plans-to-quad-boot
+created_at: 2011-07-29 12:58:21 -0400
+kind: article
+tags: [plans, hardware, linux]
+summary: "How I am going to do it (and why)."
+In a week or so, during the North Carolina sales-tax-free weekend, I will be
+obtaining a shiny new Macbook Pro. ^_^ Right now, I am using an old Dell
+Latitude, and while it still works (mostly), it's *really* time for an
+pugrade. I decided to go with a Mac because they last quite a long time,
+because Apple uses high-quality hardware components, and because Mac OS X
+has the best entry-level media software on the market.
+Of course, considering my status as a Linux advocate and avid user, I am not
+content with merely using Mac OS X all the time. No, I am going to attempt
+to do the ridiculous and multi-boot my system with Mac OS X, Windows 7
+(assuming I can find a full copy with a student discount), Arch Linux, and
+Fedora (Xfce edition). When I asked on Super User if this was possible,
+everyone laughed at me and said, "Just virtualize." However, I chose to go
+this route anyway and not virtualize, because:
+* Virtualization isn't as fast as running natively.
+* I plan to use all of the OSes (though I will try to avoid Windows as much
+as possible, I may need it for testing things).
+* This is an interesting challenge, and hackers love interesting challenges.
+But more importantly, I think I have figured out how to make it work. I fully
+intend to document everything I do so that others can do this in the future,
+but since I don't actually have the Macbook Pro yet, in this post I will
+outline my plans.
+## The Operating Systems
+In the end, my goal is to have all of these operating systems running
+* Mac OS X 10.7 ("Lion")
+* Windows 7
+* Arch Linux
+* Fedora 15 Xfce Spin
+All of them except Mac OS X will be running under BIOS compatibility mode.
+This is because Windows needs a full UEFI 2.0 interface (which the Macbook
+Pro cannot provide) if it's not going to use BIOS, and getting GRUB working
+with EFI is confusing.
+## The Partitions
+The hard disk is 500 GB, which translates to 465.6 GiB. My plan is to format
+/dev/sda with:
+1. EFI System Partition (FAT32). I will just leave this intact so that
+firmware updates actually work. 200 MiB.
+2. Mac OS X Root (HFS+ Journaled). Of course, all of my OS X system software
+will go here. 54 GiB.
+3. Lion Recovery Partition (?). 650 MiB, I think.
+4. Windows 7 Root (NTFS). 54 GiB.
+5. Arch Linux Boot (ext2). 64 MiB.
+6. Arch Linux Root (ext4). 36 GiB. I'm not doing a separate /home partition
+because you rarely need to reinstall Arch thanks to the magic of rolling
+7. Fedora Boot (ext2). 256 MiB. Fedora wants a large boot partition for some
+8. Fedora Root (ext4). 18 GiB.
+9. Fedora Home (ext4). 18 GiB. Fedora likes having a separate root and home
+partition, because they have upgrades.
+10. Common (NTFS). This is where I will store files that I want to share
+between all of my OSes. I chose NTFS because it's the only modern file system
+that can be reliably read on Windows, Mac, and Linux thanks to NTFS-3G.
+284 GiB.
+Obviously, I am using GPT for those. To enable Windows to boot,
+I will use gdisk to create a Hybrid MBR that tells Windows that the only
+partitions are sda4 and sda10. Thanks to the fact that my Mac partitions are
+contiguous with the front of the drive and my Linux partitions are contiguous
+up to Common (which is against the end of the drive), I can cover 1-3 with the
+0xEE protective partition and 5-9 with something else.
+Should I install yet another OS in the future, I will shrink some partitions
+(probably Fedora or Common) and slide Common over to the right, create the
+new partitions, and then rebuild the MBR. (The other OS I am most likely to
+install in the future is Elementary. It looks *really* nice. I might try
+Haiku as well.)
+## The Bootloaders
+I will probably end up using a grand total of four bootloaders. Namely,
+* rEFIt on sda2. rEFIt will be the bootloader that the system actually boots
+into, because it can load Mac OS X, Windows, and Linux, as well as the
+assorted EFI tools.
+* The Windows native bootloader on sda4. I have no idea how it works, and
+honestly don't care so long as it doesn't mess up the MBR.
+* GRUB 2 on sda5 to boot Arch Linux.
+* GRUB 2 on sda7 to boot Fedora.
+All of the bootloaders except rEFIt will be written to the boot sector, not
+using any of the EFI stuff. Should rEFIt not want to load the two GRUB 2s
+because they are not on the MBR, I can create a bootloader on sda10 that just
+chainloads into sda5/7.
+## The CDs
+* All the original system CDs so that I can recover in case things get
+really borked.
+* Windows 7 install CD. (Obviously I can't burn that one myself.)
+* GParted Live CD. I will use it for partitioning.
+* A rEFIt CD for testing, and for emergency use.
+* An Arch Linux 64-bit netinstall CD.
+* A Fedora 15 64-bit Xfce Spin Live CD.
+## The Process
+And now for the most important part: how to do all of this.
+1. Verify that everything is working on Mac OS X. I will not configure
+anything yet so that if I totally fritz up the system, I can restore back to
+2. Use GParted from a live CD to partition the disk according to the scheme
+3. Use GPT fdisk (gdisk) to build the hybrid MBR.
+4. Verify that I can still boot into OS X and into the Lion recovery
+5. Install the rEFIt bootloader onto the OS X root.
+6. Use Boot Camp Assistant to install Windows 7 onto sda4.
+7. Verify that I can boot into it and OS X using rEFIt.
+8. Install Arch Linux onto sda5/6.
+9. Verify that I can boot into it, Windows, and OS X using rEFIt.
+10. Install Fedora onto sda7-9.
+11. Verify that I can boot into it, Arch, Windows, and OS X using rEFIt.
+Once I have successfully done these things, I will have a Macbook Pro that
+can boot at least four operating systems. And, more importantly, the Internet
+will have instructions on making a Macbook Pro boot at least four operating