X-Git-Url: https://mattmccutchen.net/rsync/rsync.git/blobdiff_plain/f636c384400a4f40f21be711c5b4943ffad30047..b951e023ec1c81ec1ad4d6f6f3508bf3e19165e8:/rsync.yo diff --git a/rsync.yo b/rsync.yo index 77f462ad..80239be3 100644 --- a/rsync.yo +++ b/rsync.yo @@ -319,18 +319,19 @@ verb( --suffix=SUFFIX backup suffix (default ~ w/o --backup-dir) -u, --update update only (don't overwrite newer files) --inplace update the destination files in-place - -k, --keep-dirs transfer a directory without recursing - -K, --keep-dirlinks treat symlinked dir on receiver as dir + -d, --dirs transfer directories without recursing -l, --links copy symlinks as symlinks -L, --copy-links copy the referent of all symlinks --copy-unsafe-links copy the referent of "unsafe" symlinks --safe-links ignore "unsafe" symlinks -H, --hard-links preserve hard links + -K, --keep-dirlinks treat symlinked dir on receiver as dir -p, --perms preserve permissions -o, --owner preserve owner (root only) -g, --group preserve group -D, --devices preserve devices (root only) -t, --times preserve times + -O, --omit-dir-times omit directories when preserving 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 @@ -342,7 +343,8 @@ verb( --existing only update files that already exist --ignore-existing ignore files that already exist on receiver --delete delete files that don't exist on sender - --delete-after receiver deletes after transfer, not before + --delete-before receiver deletes before xfer, not during + --delete-after receiver deletes after transfer, not during --delete-excluded also delete excluded files on receiver --ignore-errors delete even if there are I/O errors --force force deletion of dirs even if not empty @@ -376,6 +378,7 @@ verb( --progress show progress during transfer --log-format=FORMAT log file transfers using specified format --password-file=FILE get password from FILE + --list-only list the files instead of copying them --bwlimit=KBPS limit I/O bandwidth, KBytes per second --write-batch=FILE write a batch to FILE --read-batch=FILE read a batch from FILE @@ -459,7 +462,7 @@ finding multiply-linked files is expensive. You must separately specify bf(-H). dit(bf(-r, --recursive)) This tells rsync to copy directories -recursively. See also --keep-dirs (-k). +recursively. See also --dirs (-d). dit(bf(-R, --relative)) Use relative paths. This means that the full path names specified on the command line are sent to the server rather than @@ -529,17 +532,6 @@ symlink where the destination has a file, the transfer would occur regardless of the timestamps. This might change in the future (feel free to comment on this on the mailing list if you have an opinion). -dit(bf(-k, --keep-dirs)) Tell the sending side to keep any directories that -are encountered. Unlike --recursive, a directory's contents are not copied -unless the directory was specified on the command-line as either "." or a -name with a trailing slash (e.g. "foo/"). Without this option or the ---recursive option, rsync will skip all directories it encounters (and -output a message to that effect for each one). - -dit(bf(-K, --keep-dirlinks)) On the receiving side, if a symlink is -pointing to a directory, it will be treated as matching a directory -from the sender. - dit(bf(--inplace)) This causes rsync not to create a new copy of the file and then move it into place. Instead rsync will overwrite the existing file, meaning that the rsync algorithm can't accomplish the full amount of @@ -563,6 +555,13 @@ should not use this option to update files that are in use. Also note that rsync will be unable to update a file in-place that is not writable by the receiving user. +dit(bf(-d, --dirs)) Tell the sending side to include any directories that +are encountered. Unlike --recursive, a directory's contents are not copied +unless the directory was specified on the command-line as either "." or a +name with a trailing slash (e.g. "foo/"). Without this option or the +--recursive option, rsync will skip all directories it encounters (and +output a message to that effect for each one). + dit(bf(-l, --links)) When symlinks are encountered, recreate the symlink on the destination. @@ -594,6 +593,10 @@ are in the list of files being sent. This option can be quite slow, so only use it if you need it. +dit(bf(-K, --keep-dirlinks)) On the receiving side, if a symlink is +pointing to a directory, it will be treated as matching a directory +from the sender. + dit(bf(-W, --whole-file)) With this option the incremental rsync algorithm 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 @@ -637,6 +640,10 @@ cause the next transfer to behave as if it used -I, causing all files to be updated (though the rsync algorithm will make the update fairly efficient if the files haven't actually changed, you're much better off using -t). +dit(bf(-O, --omit-dir-times)) This tells rsync to omit directories when +the preserving of modification times is enabled (see --times). If NFS +is sharing the files on the receiving end, it is a good idea to use -O. + dit(bf(-n, --dry-run)) This tells rsync to not do any file transfers, instead it will just report the actions it would have taken. @@ -688,14 +695,25 @@ prevent temporary filesystem failures (such as NFS errors) on the sending side causing a massive deletion of files on the destination. You can override this with the --ignore-errors option. -dit(bf(--delete-after)) By default rsync does file deletions on the -receiving side before transferring files to try to ensure that there is -sufficient space on the receiving filesystem. If you want to delete -after transferring, use the --delete-after switch. Implies --delete. +Beginning with 2.6.4, rsync does file deletions on the receiving side +incrementally as each directory is being transferred (which makes the +transfer more efficient than a separate delete pass before or after the +transfer). If you are sending files to an older rsync, --delete will +behave as --delete-before (see below). See also --delete-after. -One reason to use --delete-after is to avoid a delay before the start of -the transfer (while the receiving side is scanned for deletions) as this -delay might cause the transfer to timeout. +dit(bf(--delete-before)) Request that the file-deletions on the receving +side be done prior to starting the transfer, not incrementally as the +transfer happens. Implies --delete. + +One reason to use --delete-before is if the filesystem is tight for space +and removing extraneous files would help to make the transfer possible. +However, it does introduce a delay before the start of the transfer (while +the receiving side is being scanned for deletions) and this delay might +cause the transfer to timeout. + +dit(bf(--delete-after)) Request that the file-deletions on the receving +side be done after the transfer has completed, not incrementally as the +transfer happens. Implies --delete. 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 @@ -1024,6 +1042,13 @@ transport, not when using a remote shell as the transport. The file must not be world readable. It should contain just the password as a single line. +dit(bf(--list-only)) This option will cause the source files to be listed +instead of transferred. This option is inferred if there is no destination +specified, so you don't usually need to use it explicitly. However, it can +come in handy for a power user that wants to avoid the "-r --exclude="/*/*" +options that rsync might use as a compatibility kluge when generating a +non-recursive listing. + dit(bf(--bwlimit=KBPS)) This option allows you to specify a maximum transfer rate in kilobytes per second. This option is most effective when using rsync with large files (several megabytes and up). Due to the nature