I have a Macbook Pro configured to dual boot OSX or Ubuntu. Originally, I split the drive evenly between the two, but as I've been using Ubuntu far more heavily, and I'm running out of space on its partition, I want to reconfigure the partitions to give Ubuntu a greater share of disk space.

I tried using GParted, both running from inside Ubuntu and from GParted's Live CD, but in both I get the following screen:

GParted Screenshot

As you can see, Ubuntu has about 72GB of space. I've already shrunk the OSX partition down, leaving about 45GB of free space. I'm trying to expand the Ubuntu partition to include that additional 45GB of space, but GParted won't allow me to, presumably because of that weird "unknown" 1MB partition in the middle. I'm not 100% sure what it is, but the flags for it list "bios_grub", so I'm assuming it's where rEFIt installed Grub. Unfortunately, GParted won't let me relocate this partition, only delete it (and I'm sure I'd hose my system if I did that).

How can I resize my Ubuntu partition to use my free disk space?

EDIT: I'm running Ubuntu 10.04.


Yes, that partition is where GRUB for PC/ATs lives; you shouldn't need it on an EFI system.

The problem is that the Ubuntu installer isn't fully capable of handling EFI machines. (You've either used an older version of Ubuntu, or a modern, but not 64-bit, version of Ubuntu.) So you have an installation of GRUB that expects old PC/AT-style firmware. GRUB is installed in a specially marked partition (with an invalid GUID) because you have an EFI-partitioned hard disc. But the actual firmware that GRUB is expecting to be running on top of is old PC/AT firmware — i.e. your Macintosh bootstrapped with the compatibility support module enabled.

This is a fairly daft way to use GRUB, since there exists a version of GRUB that can be a proper EFI boot application, and that therefore lives in one's EFI System Partition as an ordinary file, just like ordinary EFI boot applications do, without requiring extra partitions with invalid GUIDs.

It's non-trivial, and beyond the scope of this answer, to switch from your old PC/AT GRUB to EFI GRUB. Go and see what Rod Smith has to say on the subject for that. But once you have, the GRUB for PC/AT Boot Partition can be removed, allowing you to then move your other partitions around once more.

The reason that the GRUB for PC/AT Boot Partition is immovable, by the way, is that even on your machine with modern firmware that allows boot applications to use filesystems and files, PC/AT GRUB still uses an antiquated system of "embedded block lists" for one of its stages to locate the next. Moving partitions around breaks these embedded block lists, because they end up no longer pointing to blocks that are within the target partition. This is why your partitioning tool is refusing to relocate that partition.

Further reading

  • Interesting. When you say "you shouldn't need it on an EFI system", do you mean I can delete it, or do I still need it even though it's not a "proper" setup? When I installed Ubuntu 10.04, I followed the Mactel instructions on the official wiki, help.ubuntu.com/community/MacBookPro5-5/Lucid (I installed it well over a year ago, so the instructions there now may be quite different then the ones I originally read). – Cerin Jan 16 '12 at 23:55

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.