设为首页 收藏本站
查看: 495|回复: 0

[经验分享] 本地远程数据同步之rsync

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2016-9-22 09:15:27 | 显示全部楼层 |阅读模式
一、简介
    rsync一款开源的,快速的,多功能可实现全量及增量的本地或者远程数据同步备份的优秀工具可适用于多个操作系统之上,rsync具有可以使本地和远程两台主机之间的数据快速的同步和备份的用能。



二、工作模式及其特性

1.rsync特性
支持拷贝特殊文件如链接文件设备等  
可以有排除指定文件或目录同步的功能,相当于打包命令tar的排除功能 --exclude
可以实现增量同步,即只同步发生变化的数据,因此效率很高
实时备份和定时备份


2.rsync命令的工作模式:
1)shell模式,也称为本地模式
2)远程shell模式,此时可以利用ssh协议来保证数据传输的安全  
3)列表模式,其工作方式与ls相似,仅列出源的内容
4)服务器模式,此时,rsync可以工作为守护进程,能够接收客服端的数据传输请求;在使用时,可以在客户端使用rsync命令把文件发送给守护进程,也可以向服务器请求获取文件。


3.rsync常用选项
rsync命令:
rsync  —a  fast,versatile(通用的),remote(and local)file-copying tool  
常用选项:
    -n:测试是否能执行成功
    -v:显示详细的过程
    -a:归档
    -z:在传输的过程中压缩
    -r:递归复制
    -P:保持原有属性
    -p:perm,保持原有权限
    -e:ssh,表示使用ssh的加密功能
    -q:quit,静默模式
    -g:保留原文件的属组
    -o:保留原文件的属主
    -l:保留原文件的连接文件

用法演示:



本地间的数据传输:

删除:rsync -avzP --delete  /tmp  
复制:rsync -avzP /etc/hosts /tmp
推:rsync -avzP -e 'ssh -p 22' /tmp/ root@10.1.1.10:/tmp   
拉:rsync -avzP -e 'ssh -p 22' root@10.1.1.10:/tmp  /opt

推:rsync -r -avzP -e ssh /tmp/etc  root@192.168.226.137:/tmp
拉:rsync -avzP -r -e ssh root@192.168.226.137:/tmp/etc  /tmp/

# rsync -r /mydata/data /backups/ : 会把目录data直接同步backups目录中
# rsync -r /mydata/data/ /backups/: 会把目录data/中的内容的同步至/backups目录中

注意:rsnc命令在使用中,如果源参数的末尾没有斜线,就复制指定目录里面的内容,包括目录本身,目标参数末尾的参数没有作用。rsync命令使用中,如果源参数的末尾有斜线,就会复制指定目录的内容,而不复制目录本身


三、配置rsync服务实现远程主机之间数据传输
1.服务端配置

1)安装软件:rsync、xinetd,超级守护进程配置文件在/etc/xinetd文件中
yum -y install rsync xinetd  


2)创建rsync配置文件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#rsync server start#
uid = nobody
gid = nobody
use chroot = no
max connections = 10
strict modes = yes
pid file = /var/run/rsyncd.pid
log file = /var/log/rsyncd.log
#directory to be backup or synced  
[synced_name]
path = /path/to/some_dir
ignore errors = yes
read only = no
write only = no
hosts allow = white_list_ip/net
hosts deny = *
说明:
1、二者都不出现时,默认为允许访问;
2、只出现hosts allow: 定义白名单;但没有被匹配到的主机由默认规则处理,即为允许;
3、只出现hosts deny: 定义黑名单;出现在名单中的都被拒绝;
4、二者同时出现:先检查hosts allow,如果匹配就allow,否则,检查hosts deny,如果匹配则拒绝;如二者均无匹配,则由默认规则处理,即为允许;
list = false
uid = root
gid = root
auth users = username
secrets file = /etc/rsyncd.passwd





3)配置密码文件/etc/rsyncd.password  
格式:username:password     文件权限600


4)配置服务启动
chkconfig rsync on
service xinetd start   


5)检查监听的端口:873   
ss -tnl |grep 873


2.客服端配置

1)配置密码文件/etc/rsyncd.password  
格式:password     文件权限600

   

3.在客户端进行测试,如果需要周期性操作,则需要将命令写入crontab中      
Pull: rsync [OPTION...] [USER@]HOST::SRC... [DEST]
       rsync [OPTION...] rsync://[USER@]HOST[:PORT]/SRC... [DEST]
Push: rsync [OPTION...] SRC... [USER@]HOST::DEST
       rsync [OPTION...] SRC... rsync://[USER@]HOST[:PORT]/DEST

图示:


配置:
wKiom1fh_tmCdkRFAABLd2aKRzQ330.jpg


测试:
wKioL1fh_3Wz4g-FAAA6P2dV1nU651.jpg














本文小耳朵原创作品,每天进步一点点:)











运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-275763-1-1.html 上篇帖子: LVM: Logical Volume Manager 逻辑卷管理 下篇帖子: 启动流程排错,自制linux内核,编译内核
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表