Problems upgrading OS X 10.11 (El Capitan) from beta to GM candidate on a dual-boot setup next to Ubuntu
I’m upgrading my OS X 10.11 (El Capitan) beta to the GM candidate on my MacBook Pro (last year's model, all original hardware) which has a dual-boot setup with Ubuntu. After the installer reboots my computer, I get:
OS X could not be installed on your computer
A boot helper partition is required when working with Core Storage.
Quit the installer to restart your computer and try again.
I have tried restarting my computer but the same error message appears each time. My guess is that the Ubuntu partition is causing this. I’m using rEFInd to boot into it.
Where has my boot helper partition disappeared (whatever that is), and how can I reinstall OS X on the partition it was previously installed on without touching the Ubuntu setup?
Output of diskutil list
:
/dev/disk0 (internal, physical):
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme *251.0 GB disk0
1: EFI EFI 209.7 MB disk0s1
2: Apple_CoreStorage Macintosh HD 232.8 GB disk0s2
3: Apple_Boot Recovery HD 650.0 MB disk0s3
4: Linux Filesystem 17.2 GB disk0s4
/dev/disk1 (internal, virtual):
#: TYPE NAME SIZE IDENTIFIER
0: Apple_HFS Macintosh HD +232.5 GB disk1
Logical Volume on disk0s2
464DCBB2-E35B-48E3-A123-B6B8C755E0F2
Unencrypted
Output of sudo gpt 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 454699328 2 GPT part - "Macintosh HD"
455108968 1269536 3 GPT part - "Recovery HD"
456378504 33594064 4 GPT part - "Linux"
489972568 262151
490234719 32 Sec GPT table
490234751 1 Sec GPT header
Output of sudo fdisk /dev/disk0
:
Disk: /dev/disk0 geometry: 30515/255/63 [490234752 sectors]
Signature: 0xAA55
Starting Ending
#: id cyl hd sec - cyl hd sec [ start - size]
------------------------------------------------------------------------
1: EE 0 0 1 - 1023 254 63 [ 1 - 409639] <Unknown ID>
*2: AF 1023 254 63 - 1023 254 63 [ 409640 - 454699328] HFS+
3: AF 1023 254 63 - 1023 254 63 [ 455108968 - 1269536] HFS+
4: 83 1023 254 63 - 1023 254 63 [ 456378504 - 33594064] Linux files*
Solution 1:
I suspect (but am not certain) that the problem is caused by the fact that OS X likes to see gaps (of at least 128MiB) between most partitions. See Apple's TN2166 document for details, and particularly the "Partitioning Policy" section. I've seen OS X installations and updates fail when such gaps are absent, so this could be the same thing. If so, though, the error message you received is less than helpful.
The error message itself seems to be referring to the fact that, since Yosemite, OS X has used a type of Logical Volume Management (LVM) by default. Since the firmware can't read inside an LVM, Apple decided to start storing its boot loader on the volume that's usually called "Recovery HD." The message seems to be saying that this volume is not present, but your output clearly indicates that it is present. My suspicion is that this represents a logic error in displaying the error message -- the lack of a 128MiB gap between partitions has been translated into the wrong error message. OTOH, it's also possible that your "Recovery HD" volume has been damaged in some way -- or maybe there's some entirely different problem that's triggering a misleading error message.
Incidentally, I've recently discovered some information on the bless
problem to which amanthethy refers that's causing problems for rEFInd users. In short, it looks like Apple is restricting the utility of bless
in an effort to tighten security. See this bug report and this one for a couple of data points. Booting to recovery mode (by holding down Alt while booting) and typing csrutil disable
in a Terminal is reported to disable this security feature, but I've not tried it myself. It may also be possible to register rEFInd outside of OS X, but I've not looked into this. (Note: I'm rEFInd's maintainer, but I don't yet have an OS X 10.11 beta installation.)
Solution 2:
Same situation. Rather than trying to force the upgrade after being stuck in the boot loop, I was OK with just going back to Yosemite and forgetting El Capitan ever existed. Surprisingly, this got me back to booting Yosemite:
- When presented with error message select Apple Menu -> Startup Disk ... -> Select HD -> Confirm
- Reboot
- Back to booting Yosemite like I never attempted the upgrade.