rsync数据同步服务介绍rsync是一款开源、快速、多功能的工具,可以实现本地或远程全量和增量数据,适用于多种操作系统平台1:rsync的特性(功能)1.支持复制特殊文件(如链接文件、设备文件)2.复制时可以排除不需要同步的目录或目录下的文件3.可以保留源文件或目录属性不变4.可实现全量和增量同步功能,传输效率较高5.可与scp、ssh、rsh等配合使用6.可通过socket传输同步数据7.支持匿名或认证(不需要系统用户)传输同步数据2:rsync的工作方式1.主机本地传输,类似于cp命令2.借助SSH服务传输数据3.在主机中传输数据守护进程形式三:rsync同步命令格式1.本地主机Local:rsync[OPTION...]SRC...[DEST]rsync-avz/etc/hosts/tmp/text/复制本地/etc/hostsfileto/tmpUnder/text/directory[root@Centos~]#rsync-avz/etc/hosts/tmp/text/发送增量文件listhostssent124bytesreceived31bytes310.00bytes/sectotalsizeis158speedupis1.02[root@Centos~]#cd/tmp/text/test执行结果[root@Centostext]#cat/etc/hosts127.0.0.1localhostlocalhost.localdomainlocalhost4localhost4.localdomain4::1localhostlocalhost.localdomainlocalhost6localhost6.localdomain6[root@Centostext]#cat/tmp/text/hosts127.0.0.1localhostlocalhost.localdomainlocalhost4localhost4.localdomain4::1localhostlocalhost.localdomainlocalhost6localhost6.localdomain6本地同步需要注意/tmp/text/和/tmp/text的区别,前者是同步目录下的内容,后者是连同当前目录一起同步**2。借助SSH服务通过远程shell访问:**Pull:rsync[OPTION...][USER@]HOST:SRC...[DEST]**rsync-avzP-e''ssh-p22"root@192.168.1.3:/etc/hosts/tmp复制远程主机的/etc/hosts文件到/tmp目录下[root@Centostext]#rsync-avzP-e"ssh-p22"root@192.168.1.3:/etc/hosts/tmproot@192.168.1.3'spassword:receivingincrementalfilelisthosts183100%178.71kB/s0:00:00(xfer#1,to-check=0/1)sent36bytesreceived146bytes40.44字节/秒总大小为183加速比为1.01测试拉取数据[root@Centostext]#cat/tmp/hosts#本地目录中的文件内容127.0.0.1localhostlocalhost.localdomainlocalhost4localhost4.localdomain4::1localhostlocalhost.localdomainlocalhost6localhost6.localdomain6###########www.baidu.com[root@localhost~]#cat/etc/hosts#远程主机目录下的文件内容127.0.0.1localhostlocalhost.localdomainlocalhost4localhost4.localdomain4::1localhostlocalhost.localdomainlocalhost6localhost6.localdomain6###########www.baidu.com[root@localhost~]#ifconfigeth0Linkencap:EthernetHWaddr00:0C:29:53:55:79inetaddr:192.168.1.3Bcast:192.168.1.255Mask:255.255.255.0inet6addr:fe80::20c:29ff:fe53:5579/64Scope:LinkUPBROADCASTRUNNINGMULTICASTtricMTU:1500MRXpackets:330errors:0dropped:0overruns:0frame:0TXpackets:243errors:0dropped:0overruns:0carrier:0collisions:0txqueuelen:1000RXbytes:33999(33.2KiB)TXbytes:30301(29.5KiB)说明拉取数据成功,本地和远程文件内容一致**Push:rsync[OPTION...]SRC...[USER@]HOST:DEST**rsync-avzP/etc/hosts-e''ssh-p22"root@192.168.1.3:/etc/hosts同步本地/etc/hosts文件到远程主机/etc/hosts,同时同步两个文件内部数据进行测试pushdata[root@Centostext]#rsync-avzP/etc/hosts-e"ssh-p22"root@192.168.1.3:/etc/hostsroot@192.168.1.3的密码:发送增量文件listhosts158100%0.00kB/s0:00:00(xfer#1,to-check=0/1)发送124字节接收37字节35.78字节/秒总大小为158加速为0.98[root@Centostext]#cat/etc/hosts127.0.0.1localhostlocalhost.localdomainlocalhost4localhost4.localdomain4::1localhostlocalhost.localdomainlocalhost6localhost6.localdomain6[root@localhost~]#cat/etc/hosts127.0.0.1localhostlocalhost.localdomainlocalhost4localhost4.localdomain4::1localhostlocalhost.localdomainlocalhost6localhost6.localdomain6通过测试两端文件内容一致,推送数据成功。3、当前环境没有配置daemon进程模式,因为没有配置相关配置,所以无法测试命令的执行情况。后面会介绍相关的配置过程和具体参数。通过rsync守护进程访问:Pull:rsync[OPTION...][USER@]HOST::SRC...[DEST]rsync[OPTION...]rsync://[USER@]HOST[:PORT]/SRC...[DEST]rsync-avzPrsync://root@192.168.1.3:/etc/hosts/etc/hosts复制远程主机上的hosts文件到本地/etc/hosts目录Push:rsync[OPTION...]SRC...[USER@]HOST::DESTrsync[OPTION...]SRC...rsync://[USER@]HOST[:PORT]/DESTrsync-avzP/sever/backuprsync://root@192.168.1.2/data/bbs/更改本地/sever/备份数据同步到远程主机/data/bbs/,4:参数介绍-a文件递归传输(相当于rtopgDl)-v显示详细方式-z传输时压缩(像传输图片时压缩,提高传输速度)-P显示传输进度信息--exclude在传输过程中排除指定的文件或目录。如有错误或其他问题欢迎留言,如有帮助欢迎点赞+转发分享。欢迎大家关注米公公的公众号:米公公的技术之路
