This GitHub "recipe" contains a couple of scripts and a procedure that may be useful for those who wish to verify that rsync has faithfully replicated all extended attributes and ACLs. Using ivv with -dry-run will reliably inform you of what's going to happen before it happens. The -ivv options are useful for debugging, providing a detailed accounting of the changes. rsync provides options that support that: % rsync -rlAXtgoDivv -dry-run -fake-super /source/ /destination It's a very good idea to make a dry run, and review rsync's proposed changes before committing. Rsync can create a mess if options are applied will-nilly. # -dry-run perform a trial run with no changes made # -fake-super store/recover privileged attrs using xattrs (for ACLs & XATTRs) # -xattrs, -X preserve extended attributes # -acls, -A preserve ACLs (implies -perms, -p) Here's a summary of some useful options: # -r recursive recurse into directories In the current version of rsync (ver 3.2.4), the following options have demonstrated their ability to accurately preserve extended attributes and ACLs across the backup-restore cycle: % rsync -rlAXtgoD -fake-super /source/ /destination Apple will not abide GPLv3 even when it has substantial benefit for their customers. ![]() Enhancements for xattr & ACL options in support of OS X users, &Īpple's decision to "freeze" rsync at 2.6.9 - just as these OS X enhancements were added seems to speak of their priorities.Ver 3.0.0 contained many significant changes, most notably: You may also notice that version 2.6.9 (released ) was followed by version 3.0.0 on. You can review the changes for each release (currently ver 3.2.4 released April, 2022). You can peruse the release history of rsync. If you use rsync on relatively modern versions of mac os, you will encounter issues with respect to preserving ACLs and Extended Attributes. With this version of rsync, the right options to use will be: rsync -avAX /source /destinationĪnd if you read me thus far, you are pretty good enough now to read man rsyncĪs suggested in his answer, using the ancient 2.6.9 version of rsync is an exercise in frustration and confusion. Upgrade your PATH so as to find the port command in itįor example, I installed it in /local/bin and modified my PATH choose the right version to install (Mavericks, Yosemite or El Capitan).go to the Quickstart section, install Xcode. ![]() I advise any user willing to maintain in sync directories betweenĭifferent Macs (or between a Mac and another Unix machine) to install This version 2.6.9 is too old and causing too many problems. ![]() These problems will be shown thanks to the -v option.Ī verification of the output of rsync is mandatory. Warning: the standard version of rsync on OS X, version 2.6.9 (see rsync -version) still The -E option means copy extended attributes and ACL, and is mandatory on HFS+ filesystems. Next runs: rsync -avE /source /destination However, using macOS 13+ is strongly encouraged. The best way is to continue to use rsync so as to maintain /destination synchronized with /source. Note: Mac users will need to be on macOS 12.5 or higher to use the latest version of Dropbox for macOS.
0 Comments
Leave a Reply. |