X-Git-Url: https://mattmccutchen.net/rsync/rsync.git/blobdiff_plain/2206abf88410dc19632faf6743eae525ad94199a..e34ad4e925293ff222bb4fe47b010153fa9f30ab:/rsync.yo diff --git a/rsync.yo b/rsync.yo index 08e3bbc2..efa99904 100644 --- a/rsync.yo +++ b/rsync.yo @@ -336,6 +336,7 @@ to the detailed description below for a complete description. verb( -L, --copy-links transform symlink into referent file/dir --copy-unsafe-links only "unsafe" symlinks are transformed --safe-links ignore symlinks that point outside the tree + --munge-links munge symlinks to make them safer -k, --copy-dirlinks transform symlink to dir into referent dir -K, --keep-dirlinks treat symlinked dir on receiver as dir -H, --hard-links preserve hard links @@ -832,6 +833,25 @@ which point outside the copied tree. All absolute symlinks are also ignored. Using this option in conjunction with bf(--relative) may give unexpected results. +dit(bf(--munge-links)) This option tells rsync to (1) modify all symlinks on +the receiving side in a way that makes them unusable but recoverable (see +below), or (2) to unmunge symlinks on the sending side that had been stored in +a munged state. This is useful if you don't quite trust the source of the data +to not try to slip in a symlink to a unexpected place. + +The way rsync disables the use of symlinks is to prefix each one with the +string "/rsyncd-munged/". This prevents the links from being used as long as +that directory does not exist. When this option is enabled, rsync will refuse +to run if that path is a directory or a symlink to a directory. + +The option only affects the client side of the transfer, so if you need it to +affect the server, specify it via bf(--remote-option). (Note that in a local +transfer, the client side is the sender.) + +This option has no affect on a daemon, since the daemon configures whether it +wants munged symlinks via its "munge symlinks" parameter. See also the +"munge-symlinks" perl script in the support directory of the source code. + dit(bf(-k, --copy-dirlinks)) This option causes the sending side to treat a symlink to a directory as though it were a real directory. This is useful if you don't want symlinks to non-directories to be affected, as @@ -1601,6 +1621,11 @@ An example: quote(tt( rsync -av --link-dest=$PWD/prior_dir host:src_dir/ new_dir/)) +If file's aren't linking, double-check their attributes. Also check if some +attributes are getting forced outside of rsync's control, such a mount option +that squishes root to a single user, or mounts a removable drive with generic +ownership (such as OS X's "Ignore ownership on this volume" option). + Beginning in version 2.6.4, multiple bf(--link-dest) directories may be provided, which will cause rsync to search the list in the order specified for an exact match.