一、rsync基本使用
1、rsync概述
Remote Sync,远程同步
支持本地复制,或与其他SSH、rsync主机同步
官方网站:http://rsync.samba.org/
2、rsync同步操作
1.命令用法
rsync [选项...] 源目录 目标目录
2.同步与复制的差异
复制:完全拷贝源到目标
同步:增量拷贝,只传输变化过的数据
3.本地同步
rsync [选项...] 本地目录1 本地目录2
rsync [选项...] 本地目录1/ 本地目录2
[root@localhost ~]# mkdir /todir
[root@localhost ~]# rsync -a /boot /todir #同步整个文件夹
[root@localhost ~]# rsync -a /boot/ /todir/ #只同步目录下的数据
3、同步控制
1.rsync操作选项
-n :测试同步过程,不做实际修改
--delete:删除目标文件夹内多余的文档
-a :归档模式,相当于-rlptgoD
-v :显示详细操作信息
-z :传输过程中启用压缩/解压
-r :递归,包括目录/子目录及所有文件
-l :保留符号链接文件
-p、-t :保留文件的权限、时间标记
-o、-g :保留文件的属主/属组标记
-D :保留设备文件及其他特殊文件
二、rsync+SSH同步
1、用法及服务端要求
1.列出SSH服务端资源
rsync user@host:远程目录/
2.与远程的SSH目录保持同步
下行:rsync [...] user@host:远程目录 本地目录
上行:rsync [...] 本地目录 user@host:远程目录
3.服务端要求
开启sshd服务,并提供授权的用户、密码
2.案例
上行案例:将远程主机/boot/目录备份到本地
[root@localhost ~]# rsync root@192.168.2.5:/boot/ #浏览远程目录
[root@localhost ~]# rsync -az root@192.168.2.5:/boot/ /fromssh/
root@192.168.2.5's password: #通过验证后执行同步
[root@localhost ~]# ls -l /fromssh/ #确认同步结果
下行案例:将本地/etc目录备份到远程主机
[root@localhost ~]# du -sh /etc/ #确认本地目录信息
[root@localhost ~]# rsync -az /etc root@192.168.2.5:/opt/
root@192.168.2.5's password: #通过验证后执行同步
[root@2.5 ~]# du -sh /etc/ #服务器端确认结果