Rsync
About RSync
Features
Support for copying links, devices, owners, groups, and permissions
exclude and exclude-from options similar to GNU tar
a CVS exclude mode for ignoring the same files that CVS would ignore
can use any transparent remote shell, including ssh or rsh
does not require super-user privileges
Pipelining of file transfers to minimize latency costs
Support for anonymous or authenticated rsync daemons (ideal for mirroring)
Usage
rsync -t *.c foo:src/Transfer all the files matching the pattern *.c from the current directory to the directory src on the machine foo. If any of the files already exist on the remote system then the rsync remote-update protocol is used to update the file by sending only the differences.
rsync -avz foo:src/bar /data/tmpThis would recursively transfer all files from the directory src/bar on the machine foo into the /data/tmp/bar directory on the local machine. These files are transferred in lqarchiverq mode, which ensures that symbolic links, devices, attributes, permissions, ownerships, etc. are preserved in the transfer.
rsync -avz foo:src/bar/ /data/tmpA trailing slash on the source changes this behavior to avoid creating an additional directory level at the destination. You can think of a trailing / on a source as meaning lqcopy the contents of this directoryrq as opposed to lqcopy the directory by namerq, but in both cases the attributes of the containing directory are transferred to the containing directory on the destination.
Reference: https://linux.die.net/man/1/rsync
Last updated
Was this helpful?