mirror of
https://github.com/RsyncProject/rsync.git
synced 2026-01-19 12:28:07 -05:00
183 lines
7.0 KiB
Plaintext
183 lines
7.0 KiB
Plaintext
WHAT IS RSYNC?
|
|
--------------
|
|
|
|
rsync is a replacement for rcp that has many more features.
|
|
|
|
rsync uses the "rsync algorithm" which provides a very fast method for
|
|
bringing remote files into sync. It does this by sending just the
|
|
differences in the files across the link, without requiring that both
|
|
sets of files are present at one of the ends of the link beforehand.
|
|
At first glance this may seem impossible because the calculation of
|
|
diffs between two files normally requires local access to both
|
|
files.
|
|
|
|
A technical report describing the rsync algorithm is included with
|
|
this package.
|
|
|
|
|
|
USAGE
|
|
-----
|
|
|
|
Basically you use rsync just like rcp, but rsync has many additional options.
|
|
|
|
Here is a brief description of rsync usage:
|
|
|
|
Usage: rsync [OPTION]... SRC [SRC]... [USER@]HOST:DEST
|
|
or rsync [OPTION]... [USER@]HOST:SRC DEST
|
|
or rsync [OPTION]... SRC [SRC]... DEST
|
|
or rsync [OPTION]... [USER@]HOST::SRC [DEST]
|
|
or rsync [OPTION]... SRC [SRC]... [USER@]HOST::DEST
|
|
or rsync [OPTION]... rsync://[USER@]HOST[:PORT]/SRC [DEST]
|
|
SRC on single-colon remote HOST will be expanded by remote shell
|
|
SRC on server remote HOST may contain shell wildcards or multiple
|
|
sources separated by space as long as they have same top-level
|
|
|
|
Options
|
|
-v, --verbose increase verbosity
|
|
-q, --quiet decrease verbosity
|
|
-c, --checksum always checksum
|
|
-a, --archive archive mode
|
|
-r, --recursive recurse into directories
|
|
-R, --relative use relative path names
|
|
-b, --backup make backups (default ~ suffix)
|
|
--suffix=SUFFIX override backup suffix
|
|
-u, --update update only (don't overwrite newer files)
|
|
-l, --links preserve soft links
|
|
-L, --copy-links treat soft links like regular files
|
|
--copy-unsafe-links copy links outside the source tree
|
|
--safe-links ignore links outside the destination tree
|
|
-H, --hard-links preserve hard links
|
|
-p, --perms preserve permissions
|
|
-o, --owner preserve owner (root only)
|
|
-g, --group preserve group
|
|
-D, --devices preserve devices (root only)
|
|
-t, --times preserve times
|
|
-S, --sparse handle sparse files efficiently
|
|
-n, --dry-run show what would have been transferred
|
|
-W, --whole-file copy whole files, no incremental checks
|
|
-x, --one-file-system don't cross filesystem boundaries
|
|
-B, --block-size=SIZE checksum blocking size (default 700)
|
|
-e, --rsh=COMMAND specify rsh replacement
|
|
--rsync-path=PATH specify path to rsync on the remote machine
|
|
-C, --cvs-exclude auto ignore files in the same way CVS does
|
|
--delete delete files that don't exist on the sending side
|
|
--delete-excluded also delete excluded files on the receiving side
|
|
--partial keep partially transferred files
|
|
--force force deletion of directories even if not empty
|
|
--numeric-ids don't map uid/gid values by user/group name
|
|
--timeout=TIME set IO timeout in seconds
|
|
-I, --ignore-times don't exclude files that match length and time
|
|
--size-only only use file size when determining if a file should be transferred
|
|
-T --temp-dir=DIR create temporary files in directory DIR
|
|
--compare-dest=DIR also compare destination files relative to DIR
|
|
-z, --compress compress file data
|
|
--exclude=PATTERN exclude files matching PATTERN
|
|
--exclude-from=FILE exclude patterns listed in FILE
|
|
--include=PATTERN don't exclude files matching PATTERN
|
|
--include-from=FILE don't exclude patterns listed in FILE
|
|
--version print version number
|
|
--daemon run as a rsync daemon
|
|
--config=FILE specify alternate rsyncd.conf file
|
|
--port=PORT specify alternate rsyncd port number
|
|
--stats give some file transfer stats
|
|
--progress show progress during transfer
|
|
--log-format=FORMAT log file transfers using specified format
|
|
--password-file=FILE get password from FILE
|
|
-h, --help show this help screen
|
|
|
|
|
|
|
|
SETUP
|
|
-----
|
|
|
|
Rsync normally uses rsh or ssh for communication. It does not need to
|
|
be setuid and requires no special privileges for installation. You
|
|
must, however, have a working rsh or ssh system. Using ssh is
|
|
recommended for its security features.
|
|
|
|
Alternatively, rsync can run in `daemon' mode, listening on a socket.
|
|
This is generally used for public file distribution, although
|
|
authentication and access control are available.
|
|
|
|
To install rsync, first run the "configure" script. This will create a
|
|
Makefile and config.h appropriate for your system. Then type
|
|
"make".
|
|
|
|
Note that on some systems you will have to force configure not to use
|
|
gcc because gcc may not support some features (such as 64 bit file
|
|
offsets) that your system may support. Set the environment variable CC
|
|
to the name of your native compiler before running configure in this
|
|
case.
|
|
|
|
Once built put a copy of rsync in your search path on the local and
|
|
remote systems (or use "make install"). That's it!
|
|
|
|
RSYNC SERVERS
|
|
-------------
|
|
|
|
rsync can also talk to "rsync servers" which can provide anonymous or
|
|
authenticated rsync. See the rsyncd.conf(5) man page for details on how
|
|
to setup a rsync server. See the rsync(1) man page for info on how to
|
|
connect to a rsync server.
|
|
|
|
|
|
MAILING LIST
|
|
------------
|
|
|
|
There is a mailing list for the discussion of rsync and its
|
|
applications. It is open to anyone to join. I will announce new
|
|
versions on this list.
|
|
|
|
To join the mailing list see the web page at http://lists.samba.org/
|
|
|
|
To send mail to everyone on the list send it to rsync@samba.org
|
|
|
|
|
|
BUG REPORTS
|
|
-----------
|
|
|
|
If you have web access then please look at
|
|
http://rsync.samba.org/rsync/
|
|
|
|
This will give you access to the bug tracking system used by the
|
|
developers of rsync and will allow you to look at other bug reports or
|
|
submit a new bug report.
|
|
|
|
If you don't have web access then mail bug reports to
|
|
rsync-bugs@samba.org or (if you think it will be of interest to lots
|
|
of people) send it to rsync@samba.org
|
|
|
|
|
|
CVS TREE
|
|
--------
|
|
|
|
If you want to get the very latest version of rsync direct from the
|
|
source code repository then you can use anonymous cvs. You will need a
|
|
recent version of cvs then use the following commands:
|
|
|
|
cvs -d :pserver:cvs@pserver.samba.org:/cvsroot login
|
|
Password: cvs
|
|
|
|
cvs -d :pserver:cvs@pserver.samba.org:/cvsroot co rsync
|
|
|
|
Look at the cvs documentation, or http://samba.org/cvs.html, for more
|
|
details.
|
|
|
|
|
|
COPYRIGHT
|
|
---------
|
|
|
|
Rsync was written by Andrew Tridgell and Paul Mackerras, and is
|
|
available under the GNU General Public License.
|
|
|
|
tridge@samba.org
|
|
paulus@cs.anu.edu.au
|
|
|
|
|
|
AVAILABILITY
|
|
------------
|
|
|
|
The main web site for rsync is http://rsync.samba.org/
|
|
The main ftp site is ftp://rsync.samba.org/pub/rsync/
|
|
This is also available as rsync://rsync.samba.org/rsyncftp/
|