Rsync 的工作方式
一、单个主机本地之间的数据传输,相当于cp
[heavenfish@A~]$ cp /etc/hosts /tmp
[heavenfish@A ~]$ rsync /etc/hosts/tmp
二、接触ssh等通道来传输数据,相当于scp
[heavenfish@A~]$ rsync -avz 1.txt -e 'ssh -p 52113' 192.168.100.62:~
sendingincremental file list
txt
sent 92bytes received 37 bytes 258.00 bytes/sec
total size is 9 speedup is 0.07
-avz 生产环境的参数
--bwlimit=100 限制传输速度
三、以守护进程(socket)的方式传输数据(重点)
①、部署准备工作
测试机A 192.168.100.61
测试机B 192.168.100.62
②、Rsync server:需要部署什么
1、 配置文件 /etc/rsyncd.conf(用户rsync,目录,模块,虚拟用户,密码文件)
2、 创建共享目录
3、 创建rsync用户,并且授权访问共享目录
4、 创建密码文件,复制配置文件里的路径、然后添加密码内容
内容:虚拟用户名:密码
5、 密码文件的权限600
6、 rsync –daemon 然后放入/etc/rc.local
7、 tail /var/log/rsyncd.log
***********************以下是配置文件*****************************************
uid = rsync
gid = rsync
use chroot = no
max connections = 200
timeout = 300
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsync.lock
log file = /var/log/rsyncd.log
[oldboy]
path = /oldboy/
ignore errors
read only = false
list = false
hosts allow = 198.168.100.0/24
hosts deny = 0.0.0.0/32
auth users = rsync_backup
secrets file = /etc/rsync.password
***********************以上是配置文件*****************************************
③、rsync client (可以有多个)
1、 密码文件和服务端没有任何关系
--password-file=/etc/rsync.password 内容:密码
2、/etc/rsync.password 权限600
④、rsync的用法
<1>推
rsync –avz rsync_backup@192.168.100.61::oldboy/data –password-file=/etc/rsync.password
rsync –avz rsync://rsync_backup@192.168.100.61/oldboy/data –password-file=/etc/rsync.password
<2>拉
rsync –avz /data/ rsync_backup@192.168.100.61::oldboy–password-file=/etc/rsync.password
rsync –avz /data/ rsync://rsync_backup@192.168.100.61/oldboy–password-file=/etc/rsync.password
⑤、排错:
1、 iptables selinux 关闭
2、 /var/log/rsyncd.log
3、 整个部署流程整体考虑排查
4、 操作习惯当做一个大事!!!