Unix & Linux Stack Exchange is a question and answer site for users of Linux, FreeBSD and other Un*x-like operating systems. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I am trying to use rsync to maintain a backup copy of my Aperture library. When I run the sync command to see what would happen this is the outcome:

rsync --dry-run -r "/Volumes/Data/Aperture Library.aplibrary" "/Volumes/Backup"

skipping non-regular file "Aperture Library.aplibrary/Database/BigBlobs.apdb"
skipping non-regular file "Aperture Library.aplibrary/Database/Faces.db"
skipping non-regular file "Aperture Library.aplibrary/Database/History.apdb"
skipping non-regular file "Aperture Library.aplibrary/Database/ImageProxies.apdb"
skipping non-regular file "Aperture Library.aplibrary/Database/Library.apdb"
skipping non-regular file "Aperture Library.aplibrary/Database/Properties.apdb"

The "file" command says that at least the ".db" file is a "SQLite 3.x database". How can I sync these files with rsync?

share|improve this question
up vote 17 down vote accepted

It would seem those files are symlinks.

To copy them as symlinks, use --links.

To copy the files they are pointing to, use --copy-links.

For details see the SYMBOLIC LINKS section in man rsync.

share|improve this answer

Use -a instead of -r. -a means to reproduce file hierarchies, including special files and permissions. -r only means to recurse on directories. For a backup, you want -a.

share|improve this answer
I'd say this is the practical solution, though the --links clarification is useful. I use rsync -hiva --log-file=log.txt source dest most of the time.. i like hiva ~ winter as a mnemonic – ptim Dec 11 '14 at 5:51

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.