Home Explore Blog CI



man-pages

36th chunk of `rsync.man`
057f7c15677e6675d7f4d4e3e46ddc4088f17a311672a1340000000100000ff2
 overrides this environ‐
              ment list.

       --one‐file‐system, -x
              This tells rsync to avoid crossing a filesystem boundary when re‐
              cursing.  This does not limit the user’s ability to specify items
              to copy from multiple filesystems, just rsync’s recursion through
              the hierarchy of each directory that the user specified, and also
              the analogous recursion on the receiving  side  during  deletion.
              Also  keep  in  mind that rsync treats a "bind" mount to the same
              device as being on the same filesystem.

              If this option is repeated, rsync omits all mount‐point  directo‐
              ries from the copy.  Otherwise, it includes an empty directory at
              each  mount‐point  it  encounters  (using  the  attributes of the
              mounted directory because those of the underlying mount‐point di‐
              rectory are inaccessible).

              If rsync has been told to collapse symlinks (via --copy‐links  or
              --copy‐unsafe‐links),  a symlink to a directory on another device
              is treated like a mount‐point.  Symlinks to  non‐directories  are
              unaffected by this option.

       --ignore‐non‐existing, --existing
              This  tells  rsync to skip creating files (including directories)
              that do not exist yet on the destination.  If this option is com‐
              bined with the --ignore‐existing option, no files will be updated
              (which can be useful if all you want to do is  delete  extraneous
              files).

              This  option is a TRANSFER RULE, so don’t expect any exclude side
              effects.

       --ignore‐existing
              This tells rsync to skip updating files that already exist on the
              destination (this does not ignore existing directories, or  noth‐
              ing would get done).  See also --ignore‐non‐existing.

              This  option is a TRANSFER RULE, so don’t expect any exclude side
              effects.

              This option can be useful  for  those  doing  backups  using  the
              --link‐dest  option  when they need to continue a backup run that
              got interrupted.  Since a --link‐dest run is copied  into  a  new
              directory  hierarchy (when it is used properly), using [--ignore‐
              existing will ensure that the  already‐handled  files  don’t  get
              tweaked  (which avoids a change in permissions on the hard‐linked
              files).  This does mean that this option is only looking  at  the
              existing files in the destination hierarchy itself.

              When  --info=skip2  is  used  rsync  will output "FILENAME exists
              (INFO)" messages where the INFO indicates one of  "type  change",
              "sum  change"  (requires  -c),  "file change" (based on the quick
              check), "attr change", or "uptodate".  Using --info=skip1  (which
              is also implied by 2 -v options) outputs the exists message with‐
              out the INFO suffix.

       --remove‐source‐files
              This tells rsync to remove from the sending side the files (mean‐
              ing  non‐directories)  that  are  a part of the transfer and have
              been successfully duplicated on the receiving side.

              Note that you should only use this option on  source  files  that
              are  quiescent.  If you are using this to move files that show up
              in a particular directory over to another host,  make  sure  that
              the finished files get renamed into the source directory, not di‐
              rectly  written  into it, so that rsync can’t possibly transfer a
              file that is not yet fully written.  If you can’t first write the
              files into a different directory, you should use a  naming  idiom
              that

Title: Rsync Options: File System Boundaries, Ignoring Files, and Removing Source Files
Summary
This section describes rsync's behavior regarding filesystem boundaries with the '--one-file-system' option, how it treats symlinks in this context, and how it handles mount points. It also explains the '--ignore-non-existing' and '--ignore-existing' options, which control whether rsync creates or updates files based on their existence at the destination. Finally, it details the '--remove-source-files' option, which removes successfully transferred files from the source, emphasizing the importance of using this option only on quiescent source files.