

–findSourceOps: exclude certain subdirectories from sync.–noProgress: do not display messages from the analysis phase.–sha256: besides comparing file size and modified date, check file SHA256 checksum.
#UNISON OR FREEFILESYNC UPDATE#

Zaloha2.sh -sourceDir="/home/baeldung/source" -backupDir="/home/baeldung/target" -color -revUp -revNew -noRemove -sha256 -findSourceOps='( -type d -a -name subdir ) -prune -o' -findSourceOps='( -type d -a -name. First, let’s say we have the following directory structure: $ tree Synchronization complete at 16:40:35 (1 item transferred, 0 skipped, 0 failed) 4. Target : unchanged file modified on at 16:28:13 size 11 rw-r-r. Source : changed file modified on at 16:40:13 size 11 rw-r-r. If we want to immediately proceed to sync with default Unison settings without any interactive prompt, where non-conflicting changes will be propagated and conflicts will be skipped, we can pass -batch=true as an option: $. Updating file file0C.bin from ~/source to ~/target If we delete or modify some files and try to sync again, we need to do the confirmation again: Nothing to do: replicas have not changed since last sync. Once it’s done, if we try to sync again, it will say nothing to sync: $. Synchronization complete at 15:29:09 (6 items transferred, 0 skipped, 0 failed) Copying file0C.bin from ~/target to ~/source Copying file0B.bin from ~/target to ~/source Copying file0A.bin from ~/target to ~/source Copying file03.bin from ~/source to ~/target Copying file02.bin from ~/source to ~/target Copying file01.bin from ~/source to ~/target We press f or Enter to confirm each change.

If we press Enter, it will ask for confirmation for each change that we want to do. We can press Enter to continue, or q to quit.
#UNISON OR FREEFILESYNC ARCHIVE#
This can happen either because this is the first time you have synchronized these roots, or because you have upgraded Unison to a new version with a different archive format.ĭonations to the Unison project are gratefully accepted: Warning: No archive files were found for these roots, whose canonical names are: When we first do the sync, we’ll get this interactive prompt: $. Let’s view the directory structure of our source and target directories: $ tree Total size is 0 speedup is 0.00 (DRY RUN) 3. Sent 189 bytes received 28 bytes 434.00 bytes/sec We can also do a dry run using the -n option, which will simulate the sync with no changes made, in order to prevent data loss: $ rsync -Pcauvn source/ target/

-v: display detailed information of what is being done.-D: preserve device files and special files.-c: skip object based on checksum, not on modified time and size.-P: display statistics of the whole transfer rather than individual files.Sent 401 bytes received 73 bytes 948.00 bytes/sec Sent 297 bytes received 76 bytes 746.00 bytes/secĪnd check our intermediate results: $ tree First, let’s view the structure of source and target directories: $ tree
