Added --copy-unsafe-links option which is like --copy-links except it is
[rsync/rsync.git] / README
... / ...
CommitLineData
1WHAT IS RSYNC?
2--------------
3
4rsync is a replacement for rcp that has many more features.
5
6rsync uses the "rsync algorithm" which provides a very fast method for
7bringing remote files into sync. It does this by sending just the
8differences in the files across the link, without requiring that both
9sets of files are present at one of the ends of the link beforehand.
10At first glance this may seem impossible because the calculation of
11diffs between two files normally requires local access to both
12files.
13
14A technical report describing the rsync algorithm is included with
15this package.
16
17
18USAGE
19-----
20
21Basically you use rsync just like rcp, but rsync has many additional options.
22
23Here is a brief description of rsync usage:
24
25Usage: rsync [OPTION]... SRC [SRC]... [USER@]HOST:DEST
26 or rsync [OPTION]... [USER@]HOST:SRC DEST
27 or rsync [OPTION]... SRC [SRC]... DEST
28 or rsync [OPTION]... [USER@]HOST::SRC [DEST]
29 or rsync [OPTION]... SRC [SRC]... [USER@]HOST::DEST
30 or rsync [OPTION]... rsync://[USER@]HOST[:PORT]/SRC [DEST]
31SRC on single-colon remote HOST will be expanded by remote shell
32SRC on server remote HOST may contain shell wildcards or multiple
33 sources separated by space as long as they have same top-level
34
35Options
36 -v, --verbose increase verbosity
37 -q, --quiet decrease verbosity
38 -c, --checksum always checksum
39 -a, --archive archive mode
40 -r, --recursive recurse into directories
41 -R, --relative use relative path names
42 -b, --backup make backups (default ~ suffix)
43 --suffix=SUFFIX override backup suffix
44 -u, --update update only (don't overwrite newer files)
45 -l, --links preserve soft links
46 -L, --copy-links treat soft links like regular files
47 --copy-unsafe-links copy links outside the source tree
48 --safe-links ignore links outside the destination tree
49 -H, --hard-links preserve hard links
50 -p, --perms preserve permissions
51 -o, --owner preserve owner (root only)
52 -g, --group preserve group
53 -D, --devices preserve devices (root only)
54 -t, --times preserve times
55 -S, --sparse handle sparse files efficiently
56 -n, --dry-run show what would have been transferred
57 -W, --whole-file copy whole files, no incremental checks
58 -x, --one-file-system don't cross filesystem boundaries
59 -B, --block-size=SIZE checksum blocking size (default 700)
60 -e, --rsh=COMMAND specify rsh replacement
61 --rsync-path=PATH specify path to rsync on the remote machine
62 -C, --cvs-exclude auto ignore files in the same way CVS does
63 --delete delete files that don't exist on the sending side
64 --partial keep partially transferred files
65 --force force deletion of directories even if not empty
66 --numeric-ids don't map uid/gid values by user/group name
67 --timeout=TIME set IO timeout in seconds
68 -I, --ignore-times don't exclude files that match length and time
69 -T --temp-dir=DIR create temporary files in directory DIR
70 --compare-dest=DIR also compare destination files relative to DIR
71 -z, --compress compress file data
72 --exclude=PATTERN exclude files matching PATTERN
73 --exclude-from=FILE exclude patterns listed in FILE
74 --include=PATTERN don't exclude files matching PATTERN
75 --include-from=FILE don't exclude patterns listed in FILE
76 --version print version number
77 --daemon run as a rsync daemon
78 --config=FILE specify alternate rsyncd.conf file
79 --port=PORT specify alternate rsyncd port number
80 --stats give some file transfer stats
81 --progress show progress during transfer
82 --log-format=FORMAT log file transfers using specified format
83 --password-file=FILE get password from FILE
84 -h, --help show this help screen
85
86
87
88SETUP
89-----
90
91Rsync uses rsh or ssh for communication. It does not need to be setuid
92and requires no special privileges for installation. It does not
93require a inetd entry or a daemon. You must, however, have a working
94rsh or ssh system. Using ssh is recommended for its security
95features.
96
97To install rsync, first run the "configure" script. This will create a
98Makefile and config.h appropriate for your system. Then type
99"make".
100
101Note that on some systems you will have to force configure not to use
102gcc because gcc may not support some features (such as 64 bit file
103offsets) that your system may support. Set the environment variable CC
104to the name of your native compiler before running configure in this
105case.
106
107Once built put a copy of rsync in your search path on the local and
108remote systems (or use "make install"). That's it!
109
110RSYNC SERVERS
111-------------
112
113rsync can also talk to "rsync servers" which can provide anonymous or
114authenticated rsync. See the rsyncd.conf(5) man page for details on how
115to setup a rsync server. See the rsync(1) man page for info on how to
116connect to a rsync server.
117
118
119MAILING LIST
120------------
121
122There is a mailing list for the discussion of rsync and its
123applications. It is open to anyone to join. I will announce new
124versions on this list.
125
126To join the mailing list send mail to listproc@samba.org with
127no subject and a body of "subscribe rsync Your Name".
128
129To send mail to everyone on the list send it to rsync@samba.org
130
131
132BUG REPORTS
133-----------
134
135If you have web access then please look at
136http://rsync.samba.org/rsync/
137
138This will give you access to the bug tracking system used by the
139developers of rsync and will allow you to look at other bug reports or
140submit a new bug report.
141
142If you don't have web access then mail bug reports to
143rsync-bugs@samba.org or (if you think it will be of interest to lots
144of people) send it to rsync@samba.org
145
146
147CVS TREE
148--------
149
150If you want to get the very latest version of rsync direct from the
151source code repository then you can use anonymous cvs. You will need a
152recent version of cvs then use the following commands:
153
154 cvs -d :pserver:cvs@cvs.samba.org:/cvsroot login
155 Password: cvs
156
157 cvs -d :pserver:cvs@cvs.samba.org:/cvsroot co rsync
158
159Look at the cvs documentation for more details.
160
161
162COPYRIGHT
163---------
164
165Rsync was written by Andrew Tridgell and Paul Mackerras, and is
166available under the Gnu Public License.
167
168tridge@samba.org
169paulus@cs.anu.edu.au
170
171
172AVAILABILITY
173------------
174
175The main web site for rsync is http://rsync.samba.org/
176The main ftp site is ftp://rsync.samba.org/pub/rsync/
177This is also available as rsync://rsync.samba.org/rsyncftp/