- 是类 unix 系统下的数据镜像备份工具。可以方便的实现本地,远程备份。
- rsync 优于其他工具的重要一点就是支持增量备份。
# 本地模式
rsync [OPTION...] SRC DEST
# 远程 Push
rsync [OPTION...] SRC [USER@]HOST:DEST
# 远程 Pull
rsync [OPTION...] [USER@]HOST:SRC DEST
# 通过 Rsync daemon Pull
rsync [OPTION...] [USER@]HOST::SRC DEST
rsync [OPTION...] rsync://[USER@]HOST[:PORT]/SRC... [DEST]
# 通过 Rsync daemon Push
rsync [OPTION...] SRC [USER@]HOST::DEST
rsync [OPTION...] SRC... rsync://[USER@]HOST[:PORT]/DEST
-
拷贝本地文件
rsync -a ./dir1/ ./backDir1/
-
远程 shell 拷贝到本地。
rsync -avz user@remoteip:/home/user/dir1/ ./dir90/
-
本地到远程。
rsync -avz dir90/ user@remoteip:/home/user/dir1/
-
本地到远程,本地不存在的文件,远程文件删除。
rsync -avz --delete ./dir90/ user@remoteip:/home/user/dir1/
-
远程到本地,远程不存在的文件,本地文件会被删除。
rsync -avz --delete user@remoteip:/home/machunyu/dir1/ ./dir90/
-
a
表示以递归方式传输文件,并保持所有文件属性rsync -a dir/ dir
-
z
对备份的文件在传输时进行压缩处理。 -
--timeout
超时时间,单位为秒。 -
-stats
给出某些文件的传输状态。 -
-n
测试现实哪些文件将被传输。 -
--delete
删除那些DST中SRC没有的文件。 -
--exclude
指定排除不需要传输的文件模式。rsync -a --exclude=.git SRC DST
-
--delete-excluded
同样删除接收端那些被该选项指定排除的文件。rsync -a --exclude=1.php --delete-excluded t1/ t2/
-
-t, --times
保持文件时间信息。rsync -at t1/ t2/
-
-u, --update
仅仅进行更新,也就是跳过所有已经存在于DST,并且文件时间晚于要备份的文件,不覆盖更新的文件。 -
-v
详细模式输出。