rsync远程同步

rsync远程同步

Rsync的官方站点位于http://rsync.samba.org

1. 作用和介绍:

rsync 是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件。rsync使用所谓的“rsync算法”来使本地和远程两个主机之间的文件达到同步,这个算法只传送两个文件的不同部分,而不是每次都整份传送,因此速度相当快。

1.1 rsync功能:

  • 作为命令,实现本地-远程文件同步
  • 作为服务,实现本地-远程文件同步

1.2 rsync特点:

  • 可以镜像保存整个目录树和文件系统
  • 可以保留原有的权限(permission,mode),owner,group,时间(修改时间,modify time),软硬链接,文件acl,文件属性(attributes)信息等
    传输效率高,使用同步算法,只比较变化的
    支持匿名传输,方便网站镜像;也可以做验证,加强安全

1.3 rsync同类服务:

  • sync 同步:刷新文件系统缓存,强制将修改过的数据块写入磁盘,并且更新超级块。
  • async 异步:将数据先放到缓冲区,再周期性(一般是30s)的去同步到磁盘。
    rsync 远程同步:remote synchronous

1.4 rsync格式

rsync [OPTION] … SRC DEST

rsync [OPTION] … SRC [user@]host:DEST

rsync [OPTION] … [user@]host:SRC DEST

rsync [OPTION] … SRC [user@]host::DEST

rsync [OPTION] … [user@]host::SRC DEST

1.5 rsync常用选项

-a包含-rtplgoD
-r同步目录时要加上,类似cp时的-r选项
-v同步时显示一些信息,让我们知道同步的过程
-l保留软连接
-L加上该选项后,同步软链接时会把源文件给同步
-p保持文件的权限属性
-o保持文件的属主
-g保持文件的属组
-D保持设备文件信息
-t保持文件的时间属性
–delete删除DEST中SRC没有的文件
–exclude过滤指定文件,如–exclude “logs”会把文件名包含logs的文件或者目录过滤掉,不同步
-P显示同步过程,比如速率,比-v更加详细
-u加上该选项后,如果DEST中的文件比SRC新,则不同步
-z传输时压缩

2. 配置rsync源服务器

2.1 配置备份源的基本思路

指备份操作的远程服务器,也称为备份源

建立rsyncd.conf配置文件、独立的账号文件;服务账号远程登录使用rsync的相关功能,服务账号是自定义的
启用rsync的–daemon模式

2.2 配置文件-rsyncd.conf

需手动建立,语法类似于Samba配置
认证配置auth users、secrets file, 不加则为匿名

2.3 rsync账号文件的作用

采用“用户名:密码”的记录格式,每行一个用户记录;独立的账号数据,不依赖于系统账号

需要对应配置文件模块(使用不同的账号+功能模块,就可以使用不同的同步策略/方式
在使用同步时,我们需要指定账号+功能模块来指定我们同步的策略

2.4 启用rsync服务

通过–daemon独自提供服务
执行kill $(cat /var/run/rsyncd.pid)关闭rsync服务

2.5 配置源的两种表示方法

格式一
用户名@主机地址: :共享模块名.
rsync -avz backuper@192.168.35.40::wwwroot /root
格式二
rsyne://用户名@主机地址/共享模块名
rsync -avz rsync:/ /backuper@192.168.35.40::/wwwroot /root

2.6 配置

服务端:修改rsync配置文件

vim /etc/rsyncd.conf
	uid = root		##修改为root
	gid = root		##修改为root
	[wwwroot]
	read only = no		##关闭只读,上行同步需要可写权限
kill 'cat /var/run/rsyncd.pid'
netstat -natp | grep rsync
rsync --daemon		##启动rsync
netstat -natp | grep rsync		##验证是否开启

![在这里插入图片描述](https://img-blog.csdnimg.cn/3e0352fa9389411eb0bbb0d847064223.png
客户端修改inotify内核参数

vim /etc/sysctl.conf
	fs.inotify.max_queued_events = 32768		##监控时间队列,默认为16384
	fs.inotify.max_user_instances = 1024		##最多监控实例数,默认为128
	fs.inotify.max_user_watches = 1048576		##每个实例最多监控文件数,默认为8192
当要监控的目录、文件数据量较多或者变化频繁时,建议加大参数值
sysctl -p		##刷新生效
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值