我希望备份网站的文件,在两台服务器上相同目录下文件达到一致,包括软链接。
-a, --archive 归档模式,表示以递归方式传输文件,并保持所有文件属性,等于-rlptgoD
-z, --compress 对备份的文件在传输时进行压缩处理
-t, --times 保持文件时间信息
-p, --perms 保持文件权限
-o, --owner 保持文件属主信息
-g, --group 保持文件属组信息
rsync -a --delete /src /dst
这里红色大字体提醒:src写斜杠和不写斜杠是不同的,写斜杠的话,认为是把这个目录下所有文件同步到dst目录里面,注意,是目录里面。不写斜杠,才是将目录src同步到dst目录里面。
举例:
主机A目录/data/web 和主机B /data/web 要保持完全一致的话,命令如下:
rsync -a --delete root@xxx.xxx.xxx.xxx:/data/web /data
强烈推荐这种方法:
rsync -a --delete root@xxx.xxx.xxx.xxx:/data/web/ /data/web/
因为写了斜线,不会因为误写影响到上级目录,而且如果目标目录不存在也会建立的。
如下写法是错误的:
rsync -a --delete root@xxx.xxx.xxx.xxx:/data/web /data/web/ 这样会同步成/data/web/web
rsync -a --delete root@xxx.xxx.xxx.xxx:/data/web/ /data/ 这样会把/data/web目录中所有文件同步到/data目录下。
总之:src的路径写斜杠代表同步该目录中所有文件,不写则同步该目录。dst目录不是,写斜杠、不写斜杠跟linux一样的解释。
另外说一下:发现这个命令可以用于删除某个目录中所有文件,对于该目录下有数以万计的文件来说,这个命令可以秒删!
rsync --delete-before -a /src /dst
方法:比如要删除/data/tmp中所有文件,但该目录下文件已经20万个了,如果用rm -f的话,就太慢了,而且可能参数太长,无法执行,只能用find /data/tmp --type f | xargs rm -f 的方法先删掉文件再rm -rf /data/tmp
用这个命令,那么:
mkdir /data/tmp_empty
rsync --delete-before -a /data/tmp_empty /data/tmp
即同步一个空目录给tmp目录,这样就能秒删了。
相关推荐
Rsync is a fast and extraordinarily versatile file copying tool. It can copy locally, to/from another host over any remote shell, or to/from a remote rsync daemon. It offers a large number of options ...
使用Linux的rsync命令实现多服务器镜像同步.docx
使用Linux的rsync命令实现多服务器镜像同步.doc
linuxrsync安装配置及命令详解.pdf
rsync命令是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件。下面通过本文给大家分享Linux 命令之rsync命令详解,需要的朋友参考下吧
linux系统下rsync同步数据命令详细解答。
linux下rsync命令详细整理.docx
linux命令rsync.txt
说到“同步”,不得不提的利器就是rsync,今天就来说说我从这个工具中看到的同步的艺术。 [不带任何选项] 我们经常这样使用rsync: 代码如下: $ rsync main.c machineB:/home/userB 1 只要目的端的文件内容和源端...
rsync命令在Linux系统中实现高效文件同步-方法笔记
这里给大家介绍一下Linux下rsync命令的用法。
rsync是一款开源的、快速的、多功能的、可实现全量及增量的本地或远程数据同步备份的优秀工具。rsync软件适用于unix/linux/windows等...下面这篇文章主要介绍了Linux下rsync命令的相关资料,需要的朋友可以参考借鉴。
rsync配置windows,linux同步及rsync常用命令,服务端与客户端数据同步
下面介绍一些个常用的命令。上篇的scp:12个scp传输文件的栗子。 简介 rsync是类unix系统下的数据镜像备份工具——remote sync。一款快速增量备份工具 Remote Sync,远程同步 支持本地复制,或者与其他SSH、...
您可以从有关rsync命令的一些信息中进行检查。 请注意,在实际复制/备份之前,将运行空运行命令,该命令显示了实际命令将要执行的操作。 默认的命令: rsync -rltgoDvP --modify-window=1 --delete 。用法您必须...