12,RSYNC远程同步复制服务

1,Rsync介绍
rsync:是一个远程同步传输工具,可通过LAN/WAN快速通过多台主机之间的文件
rsync通过“rsync算法”来远程同步传输两个主机之间不同的文件。而不需要传输已经有的文件来达到快速传输同步文件的目的
端口:873
模式:C/S

2,应用场景
备份方式:
全量备份: 备份所有的文件
增量备份: 备份与上一次备份增加的文件

应用场景
1)本端传输到对端
2)对端传输到本端
3)分层模式
12,RSYNC远程同步复制服务
4)云服务器中转
12,RSYNC远程同步复制服务
rsync与cp命令和scp命令的区别?
cp:在一个主机内复制数据,不能实现主机与主机之间
scp:可以实现主机与主机之间的远程复制数据,但不能实现只复制增量文件
scp -r /root 172.16.1.41:/root/ 将本端的数据复制到172.16.1.41主机的/root目录下
scp -r 172.16.1.41:/root/ /root将172.16.1.41主机的/root目录下的数据复制到本端
3,rsync三种模式
1)本地模式
2)远程模式
3)服务模式
创建测试数据文件:

1)dd if=/dev/zero of=/root/1G.txt bs=1M count=1024                                                  
for i in {1..10}                                                    
do                                                  
echo "S{i}" > /root/test_${i}.txt                                                   
done                                                    

1)本地模式
rsync -avzP /root/ /tmp 类似与cp的命令
rsync -azvP a.txt /tmp

2)远程模式
rsync -avzP /root/ 172.16.1.41:/root/ 将本地/root目录下的数据远程同步到172.16.1.41端的/root目录下
rsync -avzP 172.16.1.41:/root/ /root 将172.16.1.41端/root目录下的数据同步到本端/root目录下
a 表示以递归方式传输文件,并保持所有文件属性
v 详细模式输出
z 对备份的文件在传输时进行压缩处理
P 显示传输速率

3)服务模式
1)安装
yum -y install rsync

rpm -qc rsync 查看服务的配置文件

2)配置
1,创建统一的用户和组www uid=666 gid=666
12,RSYNC远程同步复制服务
12,RSYNC远程同步复制服务

2,修改配置文件(服务端)
12,RSYNC远程同步复制服务
uid = rsync #rsync使用的用户,默认nobody
gid = rsync #rsync使用的gid 默认nobody
use chroot = no #是否限定在该目录下,默认为true,当有软连接时,需要改为fasle,如果为 #true就限定为模块默认目录,通常都在内网使用rsync所以不配也可以 max connections = 200 #设置最大连接数timeout = 300 #超时时间 建议300-600
pid file = /var/run/rsyncd.pid #pid文件位置
lock file = /var/run/rsync.lock #指定lock文件用来支持“max connections ”参数使总连接不会超过限制
log file = /var/log/rsyncd.log #日志文件路径
ignore errors #忽略io错误 (最好注释或者不要配上去,有了这个代码,错误信息不回输入进日志文件,只是显示在屏幕上,不利于排错)
read only = false #指定客户端是否可以上传文件,默认
truelist = false #是否允许客户端查看可用模块
hosts allow = 192.168.253.0/24 #允许连接的ip段或个别ip,默认任何人都可以连接
hosts deny = 0.0.0.0/32 #不允许连接的IP段或个别ip
auth users = rsync_backup #匿名用户严重登录
secrets file = /etc/rsync.password #指定用户名和密码文件
格式: 用户名:密码 密码不超过8位#这个是密码文件 权限最好是600 [backup] comment = "this is a comment" #此参数指定在客户端获取可用模块列表时显示在模块名称旁边的描述字
path = /backup #模块在服务端的绝对路径
3,配置密码文件和服务端存放数据目录
12,RSYNC远程同步复制服务
12,RSYNC远程同步复制服务
4)客户端远程备份数据到Rsync服务端成功
12,RSYNC远程同步复制服务
备份数据在服务端显示用户和组都是www
12,RSYNC远程同步复制服务
注意:rsync服务搞清楚root用户和配置文件里的www用户以及登录的虚拟用户rsync_backup之间的关系
1)通过ps -aux|grep rsync可以看到rsync服务的deamon是root用户在运行
2)当数据在传输的过程中式www用户在执行
3)rsync_backup用户的功能仅仅是在登录的时候做验证功能
4,如何实现免密登录远程复制,同时在定时任务中的应用场景 (客户端)
方法一
12,RSYNC远程同步复制服务
方法二
通过环境变量预先定义好虚拟用户登录密码,export RSYNC_PASSWOR="oldboy"。
这是临时生效,可以写在脚本里,放定时任务里就可以实现免密自动备份!
12,RSYNC远程同步复制服务
12,RSYNC远程同步复制服务

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值