rsync allows to copy/synchronize folders without transferring files that already have been synchronized before and that did not change since last run. For that, you typically have to specify the source and target destination, and the updates are directly applied on the target destination.

What I intend to do: have the same functionality as described above, except that the changes (and only the changes) are written to a new target destination (empty folder), without modifying the old target destination at all.

Does rsync provide that functionality at all? I know about rsnapshot, but would like to go without it. I also don't worry about more than one sync run.

  • 1
    maybe "--compare-dest" is what you are looking for. Jan 15 at 9:33

1 Answer 1


You can do that with --link-dest. You have the source tree t1, the last backup tree t2, and the current backup destination tree t3. If a file in t1 already exists in t2, so it is not transferred in t3 : a hard link is just created in t3 to that file in t2. https://github.com/JacquelinCharbonnel/rocknroll.git is a tools that use --link-dest (like rsnaphot too).

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

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