Mac OS File Synchronization Software

File Synchronization Software allows one to sync files between two folders, disks or computers.

Synchronization is similar to backup software, but differs in that it allows copies both ways: the changes may have occurred on either side, while backup software always has a master side, which overrides the backup side. For backup software features like roll-back, historic archiving and the ability to make off-site backups (or previously: burn to DVD) are important. For synchronization software important features are the ability to detect which side has the latest version (e.g, if a file occurs on one side, it may either mean the file was created on that side, or that it was deleted on the other side, and the software needs to detect the difference), and graciously handle conflicts (e.g. when a file is changed on both sides).

Synchronization Software
Here are the main Synchronization software programs for the Mac, roughly in order or recommendation.

For more option, I recommend Joe Kissell's Review of nearly 100 Mac backup apps. While not all information is complete, it does give a good set of criteria to check for.

Backup Software
If you're mostly interested in simple backup software, SuperDuper ($28) or Carbon Copy Cloner (donationware) are good choices.

Comparison of Synchronize, Synk and ChronoSync
I did some extensive testing of Synchronize, Synk and ChronoSync.

Common Features
All software above has the ability to auto-mount Apple File Shares (AFP). A disadvantage of synchronisation over a Apple File Share is that the AFP protocol does not support extended permissions (ACL), and that it may be slow if you have lots of files to check. ChronoSync and Synk solve this problem by optionally allowing synchronisation using a control daemon on the remote host, and using their own protocol.

ChronoSync

 * Pro: Detects metadata changes, displays metadata, Optional own protocol for $10 more
 * Con: No live sync

Synk

 * Pro: Live sync, Optional own protocol
 * Con: CPU intensive, can not exclude folders, does not detect metadata changes (though it is copied if the file is changed)

Synk Pro

 * Pro: Live sync, Optional own protocol, N-way sync
 * Con: CPU intensive, does not detect metadata changes (though it is copied if the file is changed), slightly less intuitive user interface

Synchronize Plus

 * Pro: Very easy to use preview window, displays size to copy, take per-folder or per-file based actions
 * Con: Does not retain basic metadata (file permissions), No live sync

Synchronize Pro

 * Pro: Very easy to use preview window, displays size to copy, take per-folder or per-file based actions
 * Con: Expensive, No live sync, does not detect metadata changes (though it is copied if the file is changed)

Conclussion
My recommendation is to buy Synk Pro if you like live synchronization, or ChronoSync if metadata means a lot to you. Synchronize Pro is a good (but more expansive) choice if you often like to preview the copy and delete actions. I would not recommend Synchronize Plus because it does not copy any metadata. In my case, all copies files ended up as world-writable. Not a great choice for your precious backups.

Synchronization software test
This test specifically targets synchronization software, not backup software, were features like roll-back, historic archiving and the ability to burn things on CD/DVD/Tape are much more important. Some application listed here may be unfit for synchronization purposes, but may be fit for backup purposes.

Interoperability with other synchronization application not tested.Some synchronization applications will first create a database with properties of the files, so they can keep track what has been changed without the need to compare it with an other share. This technique makes it easier to create more intelligent synchronization software, but typically does not work with other synchronization software and requires you to create such a database the first time you run it.

The answer are numbered according to the level of support it has for the listed feature:

Test 3. Handles multiple computers

 * make 3 shares with file1, file2, using synchronization app.
 * Delete file2 & add file3 at share 1.
 * Synchronize share2 & share3. (to possibly confuse last sync times)
 * Synchronize share1 & share2.
 * Synchronize share2 & share3.

Test 22. Retain Access Control Permissions (e.g. chmod +a "_www allow delete" acl_file; ls -le)
(Note: AFP does not support ACL, so an application would need it's own protocol to copy these)

Test 51. Local Transfer speed test (little files, lots to copy)

 * Two empty shares. Add 100 files of 1 MB to one share. measure time.
 * Local connection

Test 51. Remote Transfer speed test (little files, lots to copy)

 * Two empty shares. Add 100 files of 1 MB to one share. measure time.
 * Remote connection

Test 52. Transfer speed test (little files, lots to copy)

 * Two empty shares. Add 1000 files of 100 kB to one share. measure time.
 * Remote connection

Test 53. Query speed test (lots of files, little to copy)

 * Two shares with 5000 files of 20 kByte. Only 1 is changed. measure time.
 * Local connection