Rsync,代表“remote sync”,它是本地和远程主机文件同步工具。它只同步更改的文件,以此实现最小化传输数据。<br>我使用Ubuntu 16.04做为例子,但是你可以把它应用到任何其它主流的Linux发型版。<br>基本语法<br>rsync命令和ssh,scp命令有点相似。<br>我们创建两个测试目录和一些文件:<br>$ mkdir dir1<br>$ mkdir dir2<br>$ touch dir1/somefile{1..100}<br>dir1中有100文件,dir2中为空。使用rsync把dir1内容同步到dir2:<br>$ rsync -r dir1/ dir2<br>-r选项代表递归,在同步目录时使用。<br>你也可以使用-a选项,代表同步所有,包括修改时间、群组、权限、特殊文件、也包括递归。<br>$ rsync -anv dir1/ dir2<br>注意上面的dir1/中的“/”不能少,它代表同步目录下文件, 如果没有“/” 代表同步这个目录。<br>和远程主机进行同步目录<br>首先,你要确保有远程主机的SSH访问权限。<br>把本地目录同步到远程主机:<br>$ rsync -a dir1/ root@linux:~/dir2<br>把远程主机目录同步到本地:<br>$ rsync -a root@linux:~/dir2/ dir1<br>rsync有用的选项<br>-z选项,压缩传输的文件:<br>$ rsync -az source dest<br>-P选项非常有用,它是-progress和-partial的组合。第一个选项是用来显示传输进度条,第二个选项允许断点续传和增量传输:<br>$ rsync -azP source dest