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).
Contents
List of Software
Here are the main Synchronization software programs for the Mac, roughly in order or recommendation.
Application | Producer | Price | Notable features |
---|---|---|---|
ChronoSync | econ technologies | $40 (+$10) | Flexible and powerful, for $10 adds custom remote backup protocol |
Synk | Decimus | $40 | Flexible and powerful, allows live synchronization |
Synk Pro | Decimus | $60 | Flexible and powerful, allows live synchronization |
FoldersSynchronizer | softoBe | $40 | Flexible and powerful |
Synchronize X Plus | Qdea | $30 | Basic synchronization, does not retain permissions |
Synchronize X Pro | Qdea | $100 | Flexible and powerful |
GoodSync for Mac | GoodSync | $40 | Feels very Windows-based |
DropBox | DropBox | varies | Stores your data in the cloud, you pay a yearly fee for the amount of data you store. |
Backup Software
Defunct Software
Comparison of Synchronize, Synk and
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.
Synchronization application basic tests
(MUST pass these)
1) Handles basic sync: adding files to two clean shares
11. no, all files are synced again, even duplicates 12. no, only one file is copied 31. yes, both new files are copied
2) Handles basic deletion: deleting file at each share
11. no, two files are added 12. no, one file is deleted, one is added 13. no, nothing happens 31. yes, the two files are deleted
3) Handles basic multiple computers
- make 3 shares with file1, file2, using synchronization app. - Delete file2 & add file 3 at share 1. - Synchronize share2 & share3. (to possibly confuse last sync times) - Synchronize share1 & share2. - Synchronize share2 & share3. 11. no, three shares are not equal now 12. no, three shares are equal, but not correct 41. yes, three shares all have file1 & file3 only.
4) Handles conflicts: file modified on both ends
21. no, just overwrites the oldest one 22. no, just overwrites the smallest one 23. no, just overwrites the second one 24. yes, logs alert and does not copy (cron mode) 31. yes, always ask (user intervention required) 32. yes, always copies file to special location 41. yes, can be specified 42. yes, can be specified differently for cron & UI
Synchronization application intelligence tests
(MAY pass these)
11) Smart time-state support: checks modification date, files size and md5 checksum
21. no, only checks file modification date only (not size) 22. no, checks file size only 31. yes, checks modification date and size 32. yes, allow user to choose between size and/or modification date 41. yes, checks checksum only 42. yes, checks modification date and checksum 43. yes, allow user to choose between modification date, size and/or checksum
13) Handles file renaming: file remains in folder, but is renamed
11. no, file is copied both ways 21. no, file is copied, old filename is deleted 41. yes, file is renamed (checks inode)
14) Handles folder renaming: only name of a folder is changed
11. no, folder with contents is copied both ways 21. no, folder with contents is copied, old folder is deleted 41. yes, folder is renamed (checks inode)
Synchronization application feature tests
(SHOULD pass these)
21) Can synchronize between folder and disk
11. no, can only synchronize between two disks 22. no, can only synchronize between two folders 31. yes
22) Can make schedule
21. no 31. only manually by applescript 32. by program, simple 33. by program, only if application is not closed 41. by cron 42. by program, separate for weekdays
23) Can run in background
21. no, requires user interaction 22. no, pops up, but can easily be clicked away 31. yes, visible, non intrusive 41. yes, not visible
24) Auto Mounts/unmounts disks
21. no 31. yes, only mount, never unmounts 32. yes, mount and always unmounts 41. yes, mount and unmount only if disk was not mounted before
25) Has preview option
21. no, immediately synchronizes 22. yes, has preview, but cannot change anything 31. yes, has preview and can skip items 41. yes, has preview and can change synchronization direction
26) Preview is user friendly
21. no, has no preview 22. no, cannot change anything 23. no, can only change per file only 31. yes, can change per folder 41. yes, can change by any selection
27) Save deleted files
21. no, files are always deleted without recoverability 21. no, files are moved to trash; doesn't work for network disks 31. yes, files are always moved to special folder 41. yes, files are optionally moved to special folder 42. yes, files are moved to special folder, and there is an easy recovery tool
28) Logging
21. no, nothing is logged 31. yes, only file copies OR deletions are logged (not everything) 32. yes, file checks are optionally logged too (verbose) 33. yes, only file name is logged, not path 41. yes, file copies and deletions are logged 42. yes, user customizable logging
Metadata preservation
(SHOULD pass these)
31) Retain Permissions and Ownership
11. no, can only run as user, and does not preserve permissions 21. no, can run as root, but new files are made root 22. no, can only run as user, but preserves permissions 23. no, must run as root in GUI to handle this 24. yes, always asks for manual input of password 31. yes, must run as root in cron script to handle this 41. yes, asks for manual input of password, only if needed 42. yes, remembers password
32) Retain Access Control Permissions (e.g. chmod +a "_www allow delete" acl_file; ls -le)
11. no, ACL is not copied 31. yes, ACL is copied if the file is copied 41. yes, ACL changes are detected and copied, even if the file itself is not changed
33) Retain HFS+ Attributes (e.g. SetFile -a V hidden_folder; GetFileInfo hidden_folder)
11. no, attributes are not copied 31. yes, attributes are copied if the file is copied 41. yes, attribute changes are detected and copied, even if the file itself is not changed
34) Retain Extended Attributes (e.g. xattr -w org.example.test some_value attribute_file; xattr attribute_file)
11. no, Extended Attributes are not copied 31. yes, Extended Attributes are copied if the file is copied 41. yes, Extended Attributes changes are detected and copied, even if the file itself is not changed
Filtering
41) Can exclude files or folders
21. no 22. yes, by full folder names only 23. yes, by full file names only 31. yes, by folder OR file only with pattern match 32. yes, by full folder and file names 41. yes, by files per folder 42. yes, by folder/file with pattern match 43. yes, by folder/file and regexp per folder
42) Can copy hidden files
22. no 31. yes, always 41. yes, configurable
Synchronization application speed tests
(SHOULD pass these)
51) Transfer speed test (little files, lots to copy)
- Two empty shares. Add 100 files of 1 MB to one share. measure time. - Local connection (6 MByte/s, 0.2 ms) 11. > 1 hour 12. 30-60 minutes 13. 20-30 minutes 21. 10-20 minutes 22. 5-10 minutes 23. 3-5 minutes 31. 2-3 minutes 32. 1-2 minutes 33. 35-60 seconds 41. 20-35 seconds 42. 15-20 seconds
52) Transfer speed test (little files, lots to copy)
- Two empty shares. Add 100 files of 100 kB to one share. measure time. - Remote connection (90 kByte/s, 16 ms) 11. > 1 hour 12. 30-60 minutes 21. 20-30 minutes 22. 10-20 minutes 32. 5-10 minutes 33. 3-5 minutes 41. 2-3 minutes 42. 1.5-2 minutes
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 (6 MByte/s, 0.2 ms) 11. > 1 hour 12. 30-60 minutes 13. 20-30 minutes 21. 10-20 minutes 22. 5-10 minutes 23. 3-5 minutes 31. 2-3 minutes 32. 1-2 minutes 33. 35-60 seconds 41. 20-35 seconds 42. 10-20 seconds 43. 5-10 seconds 44. 0-5 seconds
54) Query speed test (lots of files, little to copy)
- Two shares with 5000 files of 2 kByte. Only 1 is changed. measure time. - Remote connection (90 kByte/s, 16 ms) 11. > 1 hour 12. 30-60 minutes 13. 20-30 minutes 21. 10-20 minutes 22. 5-10 minutes 31. 3-5 minutes 32. 2-3 minutes 41. 1-2 minutes 42. 35-60 seconds 43. 20-35 seconds