2

First, I tried to install Debian on my Mac. After giving that up and deleting all the unused partitions, I found, in rEFIt, a Linux startup volume even though no Linux distribution is installed — there is not even a partition. So I open the partition inspector to synchronise, and after a quick restart, no difference.

Finally, after uninstalling rEFIt, I can boot into Mac OS X fine. However, when holding option to list available startup disks, I find Macintosh HD, Windows, and the recovery HD. I can't figure out why the Mac detects this missing Windows/Linux partition. How do I get rid of it, or at least why this is happening?

I don't know if I was particularly clear on this, but the partition isn't there, just Macintosh HD, the EFI System partition, and the Recovery HD. Nothing else....

If it was a partition, I would be very able to fix it with GParted. Also, if I was to reinstall Mac OS X v10.7 (Lion). How could I guarantee it would rebuild my PMBR and GPT? I do not have the install disk (it was preinstalled), just the recovery HD... It does not show up in disk utility or any other command line tools.

This is what I don't understand.

Anyway, here is some output...

diskutil list

**/dev/disk0
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *500.1 GB   disk0
   1:                        EFI                         209.7 MB   disk0s1
   2:                  Apple_HFS Macintosh HD            499.2 GB   disk0s2
   3:                 Apple_Boot Recovery HD             650.0 MB   disk0s3**

sudo gpt -r show -l /dev/disk0

gpt show: /dev/disk0: Suspicious MBR at sector 0
      start       size  index  contents
          0          1         MBR
          1          1         Pri GPT header
          2         32         Pri GPT table
         34          6
         40     409600      1  GPT part - "EFI system partition"
     409640  975093952      2  GPT part - "Customer"
  975503592    1269536      3  GPT part - "Recovery HD"
  976773128          7
  976773135         32         Sec GPT table
  976773167          1         Sec GPT header

sudo gpt -r show /dev/disk0

gpt show: /dev/disk0: Suspicious MBR at sector 0
      start       size  index  contents
          0          1         MBR
          1          1         Pri GPT header
          2         32         Pri GPT table
         34          6
         40     409600      1  GPT part - C12A7328-F81F-11D2-BA4B-00A0C93EC93B
     409640  975093952      2  GPT part - 48465300-0000-11AA-AA11-00306543ECAC
  975503592    1269536      3  GPT part - 426F6F74-0000-11AA-AA11-00306543ECAC
  976773128          7
  976773135         32         Sec GPT table
  976773167          1         Sec GPT header

sudo fdisk /dev/fdisk0

Disk: /dev/disk0    geometry: 60801/255/63 [976773168 sectors]
Signature: 0xAA55
         Starting       Ending
 #: id  cyl  hd sec -  cyl  hd sec [     start -       size]
------------------------------------------------------------------------
 1: EE 1023 254  63 - 1023 254  63 [         1 -  976773167] <Unknown ID>
 2: 00    0   0   0 -    0   0   0 [         0 -          0] unused
 3: 00    0   0   0 -    0   0   0 [         0 -          0] unused
 4: 00    0   0   0 -    0   0   0 [         0 -          0] unused

and if it helps, the output from rEFIt's own, Partition inspector...

*** Report for internal hard disk ***

Current GPT partition table:
 #      Start LBA      End LBA  Type
 1             40       409639  EFI System (FAT)
 2         409640    975503591  Mac OS X HFS+
 3      975503592    976773127  Mac OS X Boot

Current MBR partition table:
 # A    Start LBA      End LBA  Type
 1              1    976773167  ee  EFI Protective

MBR contents:
 Boot Code: GRUB

Partition at LBA 40:
 Boot Code: None (Non-system disk message)
 File System: FAT32
 Listed in GPT as partition 1, type EFI System (FAT)

Partition at LBA 409640:
 Boot Code: None
 File System: HFS Extended (HFS+)
 Listed in GPT as partition 2, type Mac OS X HFS+

Partition at LBA 975503592:
 Boot Code: None
 File System: HFS Extended (HFS+)
 Listed in GPT as partition 3, type Mac OS X Boot

I hope this helps.

3 Answers 3

1

I have been meddling around alot with Linux + OS X on my Mac, and it is my experience that the standard OS X tools will not touch your Linux partitions.

The above heuristic indicates that OS X will not delete your Linux partition.

To delete the Linux partition, I would re-install OS X. As a bonus, this solution would definitely clear out any lingering MBR/GPT/auxiliary problems that could potentially bug or irritate you in the future.

The strong-willed and competent individual would solve the problem using GParted - but, in the process, a typo, power loss or freak incident could loose you all you data. So best back up beforehand. And if that is done anyway, why not go the extra 45 minutes and re-install, obtaining a clean system in the process?

Reading this advice, please bear in mind that it was given by someone who's learning *NIX administration the phenomenological way - a more competent individual will surely be able to provide you with the tips needed.

But, in the end, why waste time debugging someone else's errors? No - nuke it, and get on with your life!

Cheers, Troels

1
  • you know, that was my first plan, however I could indeed use gparted, however the partition isn't on any tables, nor gparted, nor disk utility... therefore gparted won't help me... thanks a lot though 1+ Mar 11, 2012 at 18:25
1
+50

Intel-based Macs require your boot drive to use the more modern GUID Partition Table (GPT) rather than the legacy Master Boot Record (MBR) to keep track of how the hard drive has been partitioned. For compatibility with OSes that aren't GPT-savvy, drives that use the GPT still have a Pseudo MBR (PMBR) that basically mirrors the information that's in the GPT.

It's important that the tools you use to repartition your hard drive or otherwise edit your GPT or your PMBR keep them both in sync. If they get out of sync, then any non-GPT-savvy tools will just look at the PMBR and give one view of how the drive is partitioned, and the GPT-savvy tools will look at the GPT and give a different view of how the drive is partitioned.

Different tools for different OSes tend to focus on certain partition types they know best, and may not accurately report the partition type for other partitions if it's not a type they recognize. Or they might just outright omit listing unrecognized partitions. Adding to the difficulty, Mac OS X's Disk Utility won't show you certain kinds of partitions it knows about, such as Mac OS X recovery partitions.

From within Mac OS X, to get a quick view of the connected hard drives and volumes it knows about, you can use

diskutil list

To see a more detailed, low-level view of the contents of the drive's GPT, use:

sudo gpt -r show /dev/disk0
sudo gpt -r show -l /dev/disk0

Replace /dev/disk0 with the path to the device special file for the disk in question, if needed. The first version of the command shows the partition/volume type identifiers (a bunch of long GUIDs you can look up here). The second version of the command shows the volume labels (names). I usually like to see the output of both of those, so I can match up volume names to types.

To see what's in your PMBR, try:

sudo fdisk /dev/disk0

On my current machine, the fdisk output indicates that my PMBR thinks my drive is just one big partition of a type fdisk doesn't recognize, even though gpt shows that I have several different HFS+ and Mac OS X recovery partitions. I presume that if I had ever Boot Camped this drive, or used rEFIt on it, that the PMBR would know the specifics of some of the partitions, rather than showing the drive as one big chunk.

Update your Question with the output of those diskutil, gpt, and fdisk commands, and we may be able to help you even more.

Oh, and to get rid of the unwanted partition, just use Mac OS X's Disk Utility to delete it, and then grow the partition "above" it in Disk Utility's display into the space it was using.

Update: gpt show on my system doesn't have that output line about the suspicious MBR, so it makes me wonder what's suspicious about yours. Perhaps it's just the fact that you still have GRUB bootloader code in your MBR, whereas typical Mac GPT PMBR's don't have any boot code in them at all.

Also, I'd forgotten that the EFI System Partition is technically FAT32 (even though it's given a special GUID). I wonder if there's something about your MBR (like the presence of GRUB), or some contents of your EFI System Partition, that is making your Mac's EFI bootROM see it as a Windows partition instead of just being an EFI System Partition.

To inspect your EFI system partition, you can force Mac OS X to mount it like this:

sudo mkdir /mnt
sudo mount -t msdos /dev/disk0s1 /mnt

My EFI partition basically just contains:

/EFI
    /APPLE
        /EXTENSIONS
        /FIRMWARE

...plus the update files from the last EFI firmware update I installed on this machine, as well as some typical Mac OS X turd files like .Trashes/. It would be interesting to know what your EFI system partition has in it.

The other notable difference between your system and mine is that rEFIt's Partition Inspector reports my MBR boot code as "None", whereas you have GRUB in yours. I wonder if forcing Disk Utility to touch your partition tables—like by slightly shrinking, then regrowing, your main HFS+ partition—would force the MBR to get touched, the the GRUB code to be overwritten (zeroed out).

4
  • alright, I updated the question... hope you can help me... in fact you already have, thanks for the good description of what goes on inside :) Mar 11, 2012 at 18:24
  • @Luck Okay, I updated my Answer based on your data, and gave a few more ideas of things to investigate.
    – Spiff
    Mar 11, 2012 at 22:07
  • I ended up solving with, but thank you so much for your help, your getting that bounty Mar 14, 2012 at 3:06
  • Thanks @Luck. I saw that fdisk -u option and almost recommended it, but since it would modify your MBR and I hadn't tried it myself, I was reluctant to recommend it. Glad you found it and it worked for you.
    – Spiff
    Mar 14, 2012 at 17:41
1

I finally managed to get rid of that weird icon, and install Ubuntu. It turns out I had installed GRUB to the MBR, and since rEFIt. Apparently I didn't know any better; it called it Linux...

A quick

fdisk -u /dev/disk0

cleared the MBR and solved it.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .