如何使用rsync同步两个目录

Rsync(远程同步)通常用于在Linux / Unix系统中远程以及本地复制和同步文件和目录。
Rsync可用于通过本地和远程网络提取和发送数据。与SCP不同,Rsync并不安全,并且欺骗的风险很高,在使用此命令之前,应始终确保本地和远程位置都安全。

步骤1.使用以下命令检查是否安装了“ rsync”

rsync --version

 

第2步:安装Rsync的(如果跳过这一步“rsync的”已存在) (注:在计算机之间发送数据之前,请确保两个服务器上的本地防火墙具有传入的IP地址列入白名单,以避免被防火墙块。) 的Rsync有许多标记可用于通过网络发送文件,并很好地演示了我们的工程师在执行客户迁移时用于发送大文件的一系列实时示例。 (注意:在跨网络迁移大量数据时,建议使用screen命令启动屏幕会话,否则断开连接会突然终止您的迁移。)示例1:

RPM base OS   yum -y install rsync

Debian / Ubuntu family  apt-get install rsync -y

使用10Mbps传输速率发送目录的全部内容。将X替换为目标IP地址。
“文件”是示例源文件夹,“ / home / new-file”是目标文件夹。

rsync -apW --progress --bwlimit=10000 /file/* root@x.x.x.x:/home/new-file

范例2:

发送文件并显示正在传输的数据量和经过时间的进度条

rsync -pavW --progress /home/file/* root@x.x.x.x.:/home/new-file

范例3:

对于慢速的网络连接,可以使用以下命令。

rsync -pavz --progress /home/file/* root@x.x.x.x.:/home/new-file

 

感兴趣的标志:

-v:详细信息是可选的,以在传输数据时发生错误的情况下显示日志
-a:存档文件以进行数据传输以提高传输速度
-W:该规则被视为整个选项,可用于加快速度而是保持整个文件完整,从而提高传输速度。当双方都没有限制时,这是完美的选择
-z:此选项用于压缩慢速连接的数据
-p:保留权限,如果弯头末端具有相同的所有权和权限,则使用此选项
–progress:显示下载示例4的进度

将文件发送到ssh端口不是端口22的远程计算机上注意:使用此语法发送文件时;您告诉rsync在远程服务器内创建另一个以/ file / file结尾的文件夹。切勿仅使用通配符作为目标路径来结束目标路径。 您无需在迁移数据之前预先创建目标路径,只需执行即可。如果文件不存在,它将创建该文件并将数据移动到新目录。最后更新时间为2018年7月30日

rsync -pavW --progress --inplace --rsh='ssh -p 2244' file/*  root@x.x.x.x:/file

rsync -pavW --progress /home/file/* root@x.x.x.x.:/home/file/*
rsync -pavW --progress /home/file/* root@x.x.x.x.:/home/file