Everything you need to know about Carbon Copy Cloner and APFS

Product: 
ccc5

Apple introduced a new filesystem in macOS High Sierra, so naturally you may be wondering how Carbon Copy Cloner deals with this and how this new change might affect your backups. You might even be wondering, "What's a filesystem?", so we'll start with that, and gradually move into more technical details.

What's a filesystem?

The file system is perhaps the most important piece of software on your Mac. It’s also one of the most transparent, at least when it’s working correctly. Every user and every application uses the file system. The file system keeps track of and organizes all of the files on the hard drive, and also determines which users and applications have access to those files. The file system also keeps track of how many files you have and how much space they consume. Every time you look for a file, open a file, move a file, save a file or delete a file, it's the filesystem that is fulfilling that action.

Why is Apple introducing a new filesystem in High Sierra?

Apple’s legacy file system, HFS+, has worked well for almost 20 years, and Apple has made consistent improvements to it over that time. For example, Apple added support for extended attributes, file system compression, file system journaling, and full-disk encryption. All of these new features were added to keep pace with new operating system features and to make the file system more reliable. But that file system was created initially for Mac OS 8, and was designed for platter-based hard drives. Storage technology has changed a lot over the last 20 years, and modifying HFS+ to keep pace with those changes has proven increasingly difficult. To meet the challenges of new OSes and new storage technology, Apple introduced the Apple File System, or "APFS" in High Sierra.

When I upgrade my Mac to High Sierra, will my startup disk be converted to APFS?

When you upgrade to macOS High Sierra, systems with all flash storage configurations are converted automatically. Systems with hard disk drives (HDD) and Fusion drives won't be converted to APFS. You can't opt-out of the transition to APFS.

Can CCC make a bootable backup of an APFS volume?

Yes. Both CCC 4 and CCC 5 can make bootable backups of APFS-formatted startup disks, however there is a limited amount of support for APFS in CCC 4. CCC 4 can make a bootable backup from an APFS-formatted volume to an HFS+ formatted volume, and can even create a recovery volume on that HFS+ backup disk. CCC 5 can make a bootable backup from an APFS-formatted volume to an HFS+ formatted volume or to an APFS-formatted volume. CCC 5 also supports APFS encryption (e.g. CCC 5 can unlock and mount APFS-encrypted volumes during a backup task). Naturally any additional support that we can provide for APFS will be made within CCC 5; new features and functionality will not be added to CCC 4.

Can CCC make a bootable APFS volume? That is, can the destination be an APFS volume?

Yes. When cloning macOS 10.13 or later to an APFS-formatted volume using Carbon Copy Cloner 5, we expect the destination volume to be bootable.

After upgrading to High Sierra, what do I need to do to my backup disk? Do I have to erase it as APFS?

You don't need to do anything at all to your backup disk after upgrading to macOS High Sierra. If your backup volume is formatted as HFS+ and has a backup of some previous OS, simply re-run your regular backup tasks and CCC will update the OS on the destination. Having an HFS+ backup of your macOS High Sierra volume is perfectly acceptable, that will function just fine for any future restores, even to an APFS-formatted volume.

Right, but should I erase it as APFS? The source is APFS, I really think the destination needs to be APFS too.

You absolutely do not need to erase your existing backups, the destination volume's format does not have to match the source. Please just consider the amount of risk you're exposing your data to when you upgrade your OS and adopt a new filesystem on your production startup volume. Everything will probably go just fine, but if you erase your destination and adopt the new filesystem on your backups too, you're now 100% exposed to any flaws that are discovered in the new OS and filesystem. There is no impetus to erase your backup disk.

Can I use CCC to clone a High Sierra backup to another Mac running Sierra?

The macOS installer applies a firmware upgrade to your Mac when you install the High Sierra upgrade. This firmware upgrade cannot be made part of the cloning process. Only the macOS High Sierra Installer can upgrade a Macintosh to High Sierra and APFS. If you attempt to clone an APFS volume to a Macintosh that has not yet received the firmware upgrade from the High Sierra Installer, that Macintosh will not be able to boot from the APFS volume. Once your Mac has received the firmware upgrade via the macOS Installer, your Mac can boot from a CCC bootable backup on an APFS volume.

Note that this is also applicable to a Macintosh running in Target Disk Mode. If you upgrade one Mac to High Sierra via the Installer, you cannot boot a second Mac into Target Disk Mode, attach it to the first, then clone High Sierra to the Mac in Target Disk Mode. The required firmware upgrade cannot be applied to the Mac that is booted in Target Disk Mode, you must run the macOS High Sierra Installer on that second Mac. Once the second Mac has received the firmware upgrade via the macOS High Sierra Installer, you can clone the first Mac to the second Mac booted in Target Disk Mode.

Does CCC support encrypted APFS volumes?

Yes, CCC 5 can clone to and from encrypted APFS volumes (aka FileVault encryption). Note that CCC doesn't play any role in the encryption process – encryption is a function of the volume, not of the tool that's writing a file. If you enable FileVault on your startup disk, then the files on your startup disk will be encrypted. Those files are decrypted on-the-fly by the filesystem when they're opened by an application. Likewise, if you enable FileVault on the destination volume (e.g. via the Security Preference Pane while booted from the backup), then the files on the destination will be encrypted. CCC doesn't have to encrypt those files, they're encrypted on-the-fly by the filesystem as the bits are written to disk.

I heard that APFS has a "cloning" feature. Is that the same as what CCC is doing?

No, the cloning functionality within APFS is completely unrelated to the cloning that CCC performs.

APFS cloning allows the user to instantly create copies of files on the same volume without consuming extra storage space. When cloning a file, the file system doesn’t create copies of the data, rather it creates a second reference to the file that can be modified independently of the first file. The two files will share storage on the disk for portions of the files that remain identical, but changes to either file will be written to different parts of the disk. APFS file cloning only works when you make copies of a file on the same volume (e.g. duplicate a file or folder in the Finder). CCC is typically copying files between volumes, so APFS cloning isn't applicable for that kind of task.

The important take-away is that APFS file cloning can save you space on your startup disk, but CCC cloning can save your data if your source disk fails. They serve completely different purposes; APFS file cloning is not at all related to making backups.

Why doesn't the disk usage on my backup disk match the disk usage on the source disk?

CCC's global exclusions as well as the SafetyNet feature have traditionally led to legitimate differences in disk usage in the past. The aforementioned APFS file cloning feature, however, adds a new dimension to this concern. While APFS file cloning saves space on your source volume, those space savings can't be consistently applied when copying your files to another volume (because Apple doesn't offer a way for us to determine that one file is a clone of another). Making matters worse, Finder does not accurately represent the true disk usage of your files. Finder doesn't take into consideration whether one file is a clone of another (again, because Apple doesn't provide a way to make that assessment), so it sums up the total size of each file and folder, presenting a total value that is possibly astronomically higher than the capacity of the disk.

If you convert your Mac's disk to APFS, understand that the disk usage on your source and destination may never add up, and therefore may not be a reliable measure for comparing the source and destination.

What role does APFS's new "snapshot" feature play in my backup strategy?

There are several aspects of data protection that a backup aims to provide. Protection against:

  • Accidental or malevolent file deletion
  • Accidental or malevolent file modification
  • OS or software updates that cause functionality regressions
  • Hard drive failure
  • Theft
  • Catastrophic loss (e.g. tornado, hurricane, flood — loss of both original and backups)

Support for true snapshots at the filesystem level is an important and integral component of a backup strategy, but snapshots are not a replacement for a true backup on spatially disparate hardware. If your startup disk fails or is stolen, all the snapshots in the world aren't going to help you restore your startup disk and data. Having a bootable backup on an external disk, on the other hand, will get you back to work immediately.

As of this writing, Apple has not yet granted access to the APFS snapshot functionality to non-Apple developers. If and when we are granted access to this feature, we're eager to add support within CCC for making snapshots on APFS volumes.

Tags: