Note error cases that we ought to improve.
[rsync/rsync.git] / rsync.yo
index 9d1dd0a..d4209ab 100644 (file)
--- a/rsync.yo
+++ b/rsync.yo
@@ -1,5 +1,5 @@
 mailto(rsync-bugs@samba.org)
-manpage(rsync)(1)(5 Jan 2001)()()
+manpage(rsync)(1)(29 May 2001)()()
 manpagename(rsync)(faster, flexible replacement for rcp)
 manpagesynopsis()
 
@@ -276,7 +276,11 @@ verb(
      --log-format=FORMAT     log file transfers using specified format
      --password-file=FILE    get password from FILE
      --bwlimit=KBPS          limit I/O bandwidth, KBytes per second
+ -f, --read-batch=FILE       read batch file
+ -F, --write-batch           write batch file
  -h, --help                  show this help screen
+
+
 )
 
 manpageoptions()
@@ -395,8 +399,11 @@ are in the list of files being sent.
 This option can be quite slow, so only use it if you need it.
 
 dit(bf(-W, --whole-file)) With this option the incremental rsync algorithm
-is  not used  and  the whole file is sent as-is instead. This may be
-useful when using rsync with a local machine.
+is not used and the whole file is sent as-is instead.  The transfer may be
+faster if this option is used when the bandwidth between the source and
+target machines is higher than the bandwidth to disk (especially when the
+"disk" is actually a networked file system).  This is the default when both
+the source and target are on the local machine.
 
 dit(bf(-p, --perms)) This option causes rsync to update the remote
 permissions to be the same as the local permissions.
@@ -459,7 +466,7 @@ If the sending side detects any IO errors then the deletion of any
 files at the destination will be automatically disabled. This is to
 prevent temporary filesystem failures (such as NFS errors) on the
 sending side causing a massive deletion of files on the
-destination. 
+destination.  You can override this with the --ignore-errors option.
 
 dit(bf(--delete-excluded)) In addition to deleting the files on the
 receiving side that are not on the sending side, this tells rsync to also
@@ -470,6 +477,9 @@ transferring files to try to ensure that there is sufficient space on
 the receiving filesystem. If you want to delete after transferring
 then use the --delete-after switch.
 
+dit(bf(--ignore-errors)) Tells --delete to go ahead and delete files
+even when there are IO errors.
+
 dit(bf(--force)) This options tells rsync to delete directories even if
 they are not empty.  This applies to both the --delete option and to
 cases where rsync tries to copy a normal file but the destination
@@ -562,20 +572,20 @@ scratch directory when creating temporary copies of the files
 transferred on the receiving side.  The default behavior is to create
 the temporary files in the receiving directory.
 
-dit(bf(--compare-dest=DIR)) This option instructs rsync to use DIR as an
-additional directory to compare destination files against when doing
-transfers.  This is useful for doing transfers to a new destination while
-leaving existing files intact, and then doing a flash-cutover when all
-files have been successfully transferred (for example by moving directories
-around and removing the old directory, although this requires also doing
-the transfer with -I to avoid skipping files that haven't changed).  This
-option increases the usefulness of --partial because partially transferred
-files will remain in the new temporary destination until they have a chance
-to be completed.  If DIR is a relative path, it is relative to the
-destination directory.
+dit(bf(--compare-dest=DIR)) This option instructs rsync to use DIR on
+the destination machine as an additional directory to compare destination
+files against when doing transfers.  This is useful for doing transfers to
+a new destination while leaving existing files intact, and then doing a
+flash-cutover when all files have been successfully transferred (for
+example by moving directories around and removing the old directory,
+although this requires also doing the transfer with -I to avoid skipping
+files that haven't changed).  This option increases the usefulness of
+--partial because partially transferred files will remain in the new
+temporary destination until they have a chance to be completed.  If DIR is
+a relative path, it is relative to the destination directory.
 
 dit(bf(-z, --compress)) With this option, rsync compresses any data from
-the source file(s) which it sends to the destination machine.  This
+the files that it sends to the destination machine.  This
 option is useful on slow links.  The compression method used is the
 same method that gzip uses.
 
@@ -669,6 +679,11 @@ transfer was too fast, it will wait before sending the next data block. The
 result is an average transfer rate equalling the specified limit. A value
 of zero specifies no limit.
 
+dit(bf(--read-batch)) Apply a previously generated change batch.
+
+dit(bf(--write-batch)) Generate a set of files that can be transferred
+as a batch update.
+
 enddit()
 
 manpagesection(EXCLUDE PATTERNS)
@@ -679,7 +694,7 @@ selection of which files to transfer and which files to skip.
 rsync builds a ordered list of include/exclude options as specified on
 the command line. When a filename is encountered, rsync checks the
 name against each exclude/include pattern in turn. The first matching
-pattern is acted on. If it is an exclude pattern than that file is
+pattern is acted on. If it is an exclude pattern, then that file is
 skipped. If it is an include pattern then that filename is not
 skipped. If no matching include/exclude pattern is found then the
 filename is not skipped.
@@ -759,6 +774,29 @@ itemize(
   it would be excluded by the "*")
 )
 
+manpagesection(BATCH MODE)
+
+The following call generates 4 files that encapsulate the information
+for synchronizing the contents of bf(target_dir) with the updates found in
+bf(src_dir)
+
+quote(
+$ rsync -F [other rsync options here] \nl()
+           /somewhere/src_dir /somewhere/target_dir
+)
+
+The generated files are labeled with a common timestamp:
+
+itemize(
+it() bf(rsync_argvs.<timestamp>) command-line arguments
+it() bf(rsync_flist.<timestamp>) rsync internal file metadata
+it() bf(rsync_csums.<timestamp>) rsync checksums
+it() bf(rsync_delta.<timestamp>) data blocks for file update & change
+)
+
+See bf(http://www.ils.unc.edu/i2dsi/unc_rsync+.html) for papers and technical
+reports.
+
 manpagesection(DIAGNOSTICS)
 
 rsync occasionally produces error messages that may seem a little
@@ -786,6 +824,29 @@ If you are having trouble debugging include and exclude patterns, then
 try specifying the -vv option.  At this level of verbosity rsync will
 show why each individual file is included or excluded.
 
+manpagesection(EXIT VALUES)
+
+startdit()
+dit(bf(RERR_SYNTAX     1))       Syntax or usage error 
+dit(bf(RERR_PROTOCOL   2))       Protocol incompatibility 
+dit(bf(RERR_FILESELECT 3))       Errors selecting input/output files, dirs
+
+dit(bf(RERR_UNSUPPORTED 4)) Requested action not supported: an attempt
+was made to manipulate 64-bit files on a platform that cannot support
+them; or an option was speciifed that is supported by the client and
+not by the server.
+
+dit(bf(RERR_SOCKETIO   10))      Error in socket IO 
+dit(bf(RERR_FILEIO     11))      Error in file IO 
+dit(bf(RERR_STREAMIO   12))      Error in rsync protocol data stream 
+dit(bf(RERR_MESSAGEIO  13))      Errors with program diagnostics 
+dit(bf(RERR_IPC        14))      Error in IPC code 
+dit(bf(RERR_SIGNAL     20))      Received SIGUSR1 or SIGINT 
+dit(bf(RERR_WAITCHILD  21))      Some error returned by waitpid() 
+dit(bf(RERR_MALLOC     22))      Error allocating core memory buffers 
+dit(bf(RERR_TIMEOUT    30))      Timeout in data send/receive 
+enddit()
+
 manpagesection(ENVIRONMENT VARIABLES)
 
 startdit()
@@ -846,7 +907,9 @@ rsync is distributed under the GNU public license.  See the file
 COPYING for details.
 
 A WEB site is available at
-url(http://rsync.samba.org/)(http://rsync.samba.org/)
+url(http://rsync.samba.org/)(http://rsync.samba.org/).  The site
+includes an FAQ-O-Matic which may cover questions unanswered by this
+manual page.
 
 The primary ftp site for rsync is
 url(ftp://rsync.samba.org/pub/rsync)(ftp://rsync.samba.org/pub/rsync).
@@ -869,3 +932,6 @@ rsync was written by Andrew Tridgell and Paul Mackerras.  They may be
 contacted via email at tridge@samba.org and
 Paul.Mackerras@cs.anu.edu.au
 
+rsync is now also maintained by Martin Pool <mbp@samba.org>
+
+