April 23rd, 2006
Earlier, I wrote about The State of Backup and Cloning Tools under Mac OS X, where I made the point that copying files on Mac OS X is not trivial because of the metadata associated with files:
Paradoxically, copying a file and being sure that all information has been copied is not easy under Mac OS X.
I analyzed a variety of file copying engines, most of them command-line tools, and demonstrated how they fare in preserving file metadata.
In this article, I will investigate commonly used GUI backup/cloning tools for Mac OS X. The tools vary widely with respect to their feature set; the features are irrelevant here. I will concentrate purely on the underlying functionality of copying files. A backup tool needs to be able to copy files faithfully for a successful restore in case desaster has struck. The surprising conclusion of my investigation is that almost all Macintosh Backup tools fail at their most basic task, the faithful copying of files.
I set up a particularly mean set of files and folders, which feature varying BSD flags, file ownership, permissions, resource forks, HFS+ extended attributes, and ACLs. Then I used the tool in question to backup and restore or clone the set of files and folders. The tests were performed on Mac OS X 10.4.6.
All tools investigated manage to copy the file contents, including the resource forks. But when it comes to the file metadata, the performance varies widely, as can be seen in the following results.
Based on the ability to preserve metadata, I gave the following recommendations:
Update 2006-04-23: slightly revamped my recommendation scale.
- Highly recommended: no perceivable problems with metadata preservation
- Partially recommended: all metadata preserved except for creation date, which is an issue that plagues all of Apple’s tools (see my earlier explanation), or HFS+ extended attributes or ACLs, or BSD flags. Depending on one’s preferences and usage patterns, these deficiencies might be tolerable at this time. Especially with regard to extended attributes and ACLs, one needs to be careful, though: while some of the tools that do not support HFS+ extended attributes may still be viable at present, they will grow increasingly inappropriate in the future as more and more applications make use of HFS+ extended attributes.
- Not recommended: Preserves basic metadata such as owner/permissions or modification date, but doesn’t preserve other important bits of metadata.
- Avoid at all cost: Doesn’t preserve most basic metadata such as owner/permissions or modification date, or appears buggy.
Please refer to my earlier article on explanations about the different types of metadata.
Update 2006-04-26: Even though it should already be pretty obvious, an additional word or two: my recommendation is based solely on the metadata preservation capabilities (no other features are judged), and on my perspective that a backup tool should preserve every bit of metadata of every file. There are good reasons to have different preferences; in that case, study the list of each tools’ issues and decide for yourself if you can live with it. I deliberately did not give marks or points, because it is all relative to your preferences and needs. Another point: there are tools that do not explicitly allow the user to authenticate as root; hence, only files accessible by you will be copied, and every copied file will have you as owner. If you only copy files owned by you in the first place, these tools will not do any harm to your data, so you can safely ignore my warning about ownership/root authentication. Also, there may be ugly workarounds for running the tool as root, but this is generally not to be recommended.
|Apple Disk Utility (file-by-file mode)||10.5.5||doesn’t preserve creation date (file-by-file mode) Update 2006-04-27: in addition, doesn’t preserve locked flag, HFS+ extended attributes, ACLs in OS X 10.4.6. For device-level cloning mode, see my earlier article.||Partially recommended (<OS X 10.4.6), avoid at all cost (OS X 10.4.6)|
|Carbon Copy Cloner||2.3||doesn’t preserve BSD flags, locked flag, creation date, HFS+ extended attributes, ACLs [uses
|ChronoSync||3.2.1||doesn’t authenticate (i.e., doesn’t preserve owner, can’t access other users’ files with insufficient permissions), doesn’t preserve nodump,opaque flags, creation dates for folders with uappnd flag set are not preserved, modification dates of folders are not preserved Update 2006-04-26:The vendor has committed to fixing these issues in an upcoming version.||Not recommended (see note about upcoming update)|
|CloneX||2.0.2||doesn’t preserve BSD flags, HFS+ extended attributes, ACLs||Partially recommended|
|DÃ©jÃ Vu||3.2.1||doesn’t preserve BSD flags, HFS+ extended attributes, ACLs [uses
|Impression||3.0||doesn’t unset “ignore ownership” flag on image
||Avoid at all cost (see note about upcoming update)|
|MimMac||1.8||doesn’t preserve owner for locked files, doesn’t preserve BSD flags, ACLs||Not recommended|
|Prosoft Data Backup||2.1.0||doesn’t preserve owner when certain BSD flags set, doesn’t preserve HFS+ extended attributes, ACLs, issues with modification/creation date||Not recommended|
|PsyncX||2.1.1||doesn’t preserve BSD flags, HFS+ extended attributes, ACLs [uses
|Retrospect copy mode||6.1.126||doesn’t preserve BSD flags, issues with modification date, doesn’t preserve ACLs||Avoid at all cost|
|Retrospect restore mode||6.1.126||completely clobbers permissions, doesn’t preserve modification date of folders [see footnote a], doesn’t preserve ACLs||Avoid at all cost|
|RSyncX||2.1||issues with some BSD flags, issues when uappnd set on directory, doesn’t preserve HFS+ extended attributes, ACLs [uses
|Silverkeeper||1.1.4||doesn’t preserve BSD flags, HFS+ extended attributes, ACLs||Partially recommended|
|SuperDuper||2.1||perfect preservation of all metadata||Highly recommended|
|Synchronize! Pro X||5.0||doesn’t preserve BSD flags, ACLs||Partially recommended|
|SyncupX||1.5.5||doesn’t preserve owner, permissions, BSD flags, creation date||Not recommended|
|Synk||5.2.2||doesn’t preserve BSD flags, HFS+ extended attributes, ACLs
|Tri-Backup||4.0.4||doesn’t preserve BSD flags, HFS+ extended attributes, ACLs||Partially recommended|
[a] Update 2006-04-26: I’ve found this post, which basically says that the clobbering of the folder modification dates is deliberate, and that there’s an obscure “secret option” by which it can be switched off. I consider such a solution not acceptable.
The surprising conclusion is that almost all Macintosh backup or cloning programs do not fulfill their primary purpose, i.e., they are not able to restore files with all associated metadata. This is despite the fact that many of the tools are advertised as “safe”, “accurate”, “bug-free”, etc. The tools that fail are harmful because they generate a false sense of security. Even more exasperating is that many of these tools cost (significant amounts of) money. The only laudable exception is the great SuperDuper application, which performs flawlessly.
I have to remark, though, that the “partiallly recommended” tools may still constitute viable solutions for people who do not use HFS+ extended attributes or ACLs or BSD flags, or do not care if the creation date is lost on backup.
One may speculate about reasons for the devastating failure across the board. Some tools use flawed underlying engines such as ditto (Carbon Copy Cloner) and psync (DÃ©jÃ Vu, PsyncX), so they inherit their deficiencies. Many other developers seem to try to roll their own proprietary copying/archiving routines, but the results show that this is an extremely bug-prone endeavor. Only Shirt Pocket with SuperDuper has succeeded at this task. I would expect that many of the “custom” engines have even more bugs in corner cases that my tests didn’t cover.
One result that I found extremely surprising is the poor performance of the venerable Retrospect. Basically, the file restore resulted in completely clobbered metadata; file copying was only slightly better. I downloaded the time-limited demo, could it have to do anything with this? Does anybody have any clues why Retrospect performs so badly?
I don’t have a .Mac subscription, so I couldn’t test Apple Backup. I’d be interested in reader feedback on Apple Backup.
Update 2006-04-26: Because of this, I cannot currently recommend Apple’s
asr in file-by-file mode as a cloning alternative, which I otherwise would.
asr in device-level mode is still fine, though, and guarantees that all metadata is preserved.