3

Where are the Core Storage instructions stored?

In Kevin White's macOS Support Essentials 10.12, White says

The second partition, occupying the final ~650 MB of the disk is an "Apple_Boot" formatted volume that contains the Recovery HD system. Aside from providing macOS Recovery functionality, this second partition is intentionally not managed by Core Storage, since it provides the software necessary for a Mac computer's ... firmware to understand Core Storage volumes.

If a Mac doesn't have a Recovery HD volume, is it not eligible for Core Storage?

Will FileVault work? and if so, how does it support encryption during use?

3
  • 1
    What do you mean with "instuctions"! The part of your quotation in bold is wrong!
    – klanomath
    May 12, 2017 at 4:32
  • Whatever information is used which allows your machine to utilize Core Storage. White explains it as if the instruction set for Core Storage is saved on the Recovery HD - I was just very curious how that worked.
    – QMord
    May 12, 2017 at 4:35
  • 2
    The Recovery HD is needed to boot a FileVault system volume because an intermediate encryption key is stored there, but it's not required to boot a non-encrypted CS volume or decrypt a FV volume (even a system volume).
    – klanomath
    May 12, 2017 at 4:40

2 Answers 2

2

Starting up from a core storage volume -- whether encrypted or not -- requires a non-Core-Storage volume to hold the booter file. There's some coverage of this in reference section 26.1 of the Support Essentials book, and also a bit in section 9.1 where it talks about Core Storage and Fusion Drive.

What happens during startup is that the firmware loads a booter file, which then loads the kernel (and kext cache) and starts that off. The firmware doesn't know how to deal with Core Storage (whether or not it's encrypted), so the booter has to be located on a plain Mac OS Extended volume. The booter is then responsible for mounting the Core Storage volume (including unlocking it if it's encrypted) so that it can load and start the kernel.

  • For a plain (non-CS) startup volume, the booter is located on the main volume (at /System/Library/CoreServices/boot.efi).
  • For a CS-with-Recovery-partition setup, the booter will be located on the Recovery HD volume (along with the necessary info to present the FileVault unlock screen and unlock the main volume). In this case, the Recovery HD volume actually has two (or possibly more) booter files, one set up to start from the main volume, and on set up to start into the Recovery environment.
  • For a Fusion Drive (a small fast SSD combined with a big slow HD via Core Storage), the booter is located on a small Boot OS X volume on the SSD. Boot OS X is similar to a Recovery HD, but doesn't have the Recovery environment files, just the booter and necessary support files for that. There is a Recovery HD in this setup, but it's over on the HD so it doesn't take up precious SSD capacity. (The reason that the booter is split out and put on the SSD is to make the boot process faster.)

It is possible, under at least some circumstances, to start up from a Core Storage volume with just a Boot OS X volume, not the full Recovery HD volume. But I haven't experimented with the limits of this, so I can't say too much about it. What I will say is that starting up from any Core Storage volume is going to require some sort of second non-CS volume to load the booter from.

And of course, in 10.13 the new APFS volume format adds yet another set of complications to this. I haven't experimented with it much yet, so I can't say much about how it works.

1

Without a recovery partition you can't enable FileVault 2:

https://support.apple.com/en-us/HT204837

"Without a Recovery System, FileVault won't encrypt your startup drive."

I'll bet CoreStorage volumes will work, just probably not encrypted ones.

You must log in to answer this question.

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