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/tmp
This 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/tmp
A 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?