rsync基本原理
rsync命令精华总结
Usage: rsync [OPTION]... SRC [SRC]... DEST or rsync [OPTION]... SRC [SRC]... [USER@]HOST:DEST or rsync [OPTION]... [USER@]HOST:SRC [DEST] -e, --rsh=COMMAND specify the remote shell to use --rsync-path=PATH specify path to rsync on the remote machine -a, --archive archive mode, equivalent to -rlptgoD -r, --recursive recurse into directories -l, --links copy symlinks as symlinks -p, --perms preserve permissions -t, --times preserve times -g, --group preserve group -o, --owner preserve owner (root only) -D, --devices preserve devices (root only) -c, --checksum always checksum --exclude-from=FILE exclude patterns listed in FILE --include-from=FILE don't exclude patterns listed in FILE --include=PATTERN don't exclude files matching PATTERN --exclude=PATTERN exclude files matching PATTERN -v, --verbose increase verbosity -n, --dry-run show what would have been transferred --delete delete files that don't exist on the sending side (!!!danger!!!) --delete-excluded also delete excluded files on the receiving side --delete-after delete after transferring, not before -q, --quiet decrease verbosity -R, --relative use relative path names -b, --backup make backups (default ~ suffix) --backup-dir make backups into this directory --suffix=SUFFIX define backup suffix -u, --update update only (don't overwrite newer files) -L, --copy-links copy the referent of symlinks --copy-unsafe-links copy links outside the source tree --safe-links ignore links outside the destination tree -H, --hard-links preserve hard links -S, --sparse handle sparse files efficiently -W, --whole-file copy whole files, no incremental checks --no-whole-file turn off --whole-file -x, --one-file-system don't cross filesystem boundaries -B, --block-size=SIZE checksum blocking size (default 700) -C, --cvs-exclude auto ignore files in the same way CVS does --existing only update files that already exist --ignore-existing ignore files that already exist on the receiving side --ignore-errors delete even if there are IO errors --max-delete=NUM don't delete more than NUM files --partial keep partially transferred files --force force deletion of directories even if not empty --numeric-ids don't map uid/gid values by user/group name --timeout=TIME set IO timeout in seconds -I, --ignore-times don't exclude files that match length and time --size-only only use file size when determining if a file should be transferred --modify-window=NUM Timestamp window (seconds) for file match (default=0) -T --temp-dir=DIR create temporary files in directory DIR --compare-dest=DIR also compare destination files relative to DIR --link-dest=DIR create hardlinks to DIR for unchanged files -P equivalent to --partial --progress -z, --compress compress file data --version print version number --daemon run as a rsync daemon --no-detach do not detach from the parent --address=ADDRESS bind to the specified address --config=FILE specify alternate rsyncd.conf file --port=PORT specify alternate rsyncd port number --blocking-io use blocking IO for the remote shell --no-blocking-io turn off --blocking-io --stats give some file transfer stats --progress show progress during transfer --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 --read-batch=PREFIX read batch fileset starting with PREFIX --write-batch=PREFIX write batch fileset starting with PREFIX -h, --help show this help screen
实际使用rysnc的几个典型实例:
-
备份远程数据到本地
rsync -e "ssh -l huangwei 192.168.1.162" -a huangwei@192.168.1.162:/home/huangwei/rsyncbak/ ~/rsyncbak