Ted Kulp

Code, Photos, Assorted Nonsense

Resizing Bootcamp Partitions

Bootcamp rocks. It really does. As someone who likes PC gaming, it’s a godsend for playing games while still being mobile. Say whatever you want, but DirectX is going to beat OpenGL every time, and when your laptop is 2.5 years old, you need to squeeze out as much performance as possible.

That being said, World of Warcraft 4.0.1 is out along with Civ V, so I really needed to repartition my Bootcamp partition to make sure they fit. Wow, what a nightmare! It literally took me 28 hours from the time I started the repartition until I got Windows 7 to boot again. After the initial resizing, it became a migraine-inducing clusterf**k of trial and error that would make your head spin.

However, I did get it, and I believe I know all the convoluted steps it took to get there. This will not be a step by step guide, just an overview on the apps and order to do these in. Good Luck!

Resizing

This is the easy part. I grabbed the gparted live CD (http://gparted.sourceforge.net/livecd.php) and burned a copy of it.
Reboot, hold C after the *bong* and let it boot up. Find your HFS+ partition and make it smaller, Find your NTFS partition and make it bigger. Hit Apply. In my case, it took just over 5 hours to complete. I had to take a road trip while this was going on, so I put the inverter in the car and just let it run. Easy enough.

When I reboot, the Mac side booted up fine, but the Windows partition didn’t even show as an option when you held down Alt while booting up. Ok, now what?

rEFIt

EFI is the BIOS alnerative that machines are starting to use these days. Apple was an early adopter of this technology and has been using it for a few years. It takes a lot of the bootup procedure out of the on board chips and onto on disc logic. Honestly, I don’t know the advantages, but I know it’s kind of a pain right now.

Anyway, rEFIt is sort of an EFI extension system. It allows for a nice boot menu, the ability to run other utilities before you boot up your OS, etc. In this case, it allows us to see the Windows partition without any issue.

Grab rEFIt from http://refit.sourceforge.net/ and install it using the .mpkg file in the .dmg. Now you have to reboot twice. Why twice? No clue, I didn’t bother to read into it.

On the 2nd reboot, you should see a menu when you boot up. It should show both partitions, as well as a bottom list of menu items. The 2nd item in the list should say “Partiton Manager” or similar. Arrow key over to that and run it. It will show you a list of partitions that the EFI system shows and a list what the MBR thinks is there. What this means isn’t that important. It should also ask you if you want to make the MBR match the EFI. Hit Y and Enter. It’ll say that it’s done and you’ll be sent back to the main boot menu.

Now, the non-EFI boot menu (the one you get when you hold Alt) will show Windows again. That’s half the problem.

Fixing Windows

This part is significantly easier. Grab your handy dandy Windows 7 install disc. If you don’t have one, you can download a recovery disc from http://neosmart.net/blog/2009/windows-7-system-repair-discs/ (this is what I did). Put that disc in and reboot.

Get yourself into recovery mode. When it asks you if you want to automatically fix Windows, click no. You should then be presented with a menu of options. Select command line and a box should pop up. Type the following:

bootrec.exe /FixBoot
bootrec.exe /FixMbr
bootrec.exe /RebuildBcd

After each command, you should see a “Command successful”. Reboot and remove the recovery disc.

Now select your Windows partition and your should boot right up. My guess is that every time that you resize your partitions, you’ll have to follow this procedure.

Aftermath

Fel free to remove rEFit if you’d like. The easiest way is to just move the /efi directory to another name, but it might be better to follow the uninstall directions on the rEFIt site. I’m leaving it there so that if I need to do this procedure again, I’m ready to go.

Good luck!

Comments