Rsync
Rsync(Remote Sync)是一个用于文件同步和备份的开源工具。
它可以在本地系统之间或本地系统与远程系统之间同步文件和目录。
1.安装
在大多数常见的Linux发行版中,都没有默认安装rsync。
sudo apt-get install rsync
sudo yum install rsync
2.使用场景
一些常见的使用场景包括:
Rsync使用方法
rsync命令 是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件。
rsync使用所谓的“rsync算法”来使本地和远程两个主机之间的文件达到同步,这个算法只传送两个文件的不同部分,而不是每次都整份传送,因此速度相当快。
1.本地文件
将源目录同步到目标目录
$ rsync -r source destination
上面命令中,-r 表示递归,即包含子目录。注意,-r是必须的,否则 rsync 运行不会成功。
source 目录表示源目录,destination 表示目标目录。
多个文件或目录同步
$ rsync -r source1 source2 destination
上面命令中,source1、source2 都会被同步到 destination 目录。
-a 参数可以替代 -r,除了可以递归同步以外,还可以同步元信息(比如修改时间、权限等)。
由于 rsync 默认使用文件大小和修改时间决定文件是否需要更新,所以 -a 比 -r 更有用。
下面的用法才是常见的写法。
$ rsync -a source destination
目标目录 destination 如果不存在,rsync 会自动创建。
执行上面的命令后,源目录 source 被完整地复制到了目标目录 destination 下面,即形成了 destination/source 的目录结构。
如果只想同步源目录 source 里面的内容到目标目录 destination ,则需要在源目录后面加上斜杠。
$ rsync -a source/ destination
上面命令执行后,source 目录里面的内容,就都被复制到了 destination 目录里面,并不会在 destination 下面创建一个 source 子目录。