RSYNC+INOTIFY基础(一)

一 rsync概述

Remote Sync远程同步
–支持本地复制,或与其他SSH/rsync主机同步
–官网:http://rsync.samba.org/

二 命令的用法

rsync [选项] 源目录 目标目录
同步与复制的差异
(复制)完全拷贝源到目标
(同步)增量拷贝,只传输变化过的数据

三 rsync同步操作

–rsync [选项] 本地目录1 本地目录2 #同步整个文件夹
–rsync [选项] 本地目录1/ 本地目录2 #只同步目录下的数据

rsync操作常用选项
	-n:测试同步过程,不做实际修改
	--delete:删除目标文件夹内多余的文档
	-a:归档模式,相当于-rlptgoD
		-rlptgoD[-r:包含目录/子目录及所有文件]
			[-l:保留符号链接文件]
			[-p -t:保留文件的权限/时间标记]
			[-o -g:保留文件的属主/属组标记]
			[-D:保留设备文件及其他特殊文件]
	扩展选项:-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 传输时压缩

四 rsync+SSH同步

1.列出SSH服务端资源

#rsync user@host:远程目录/

2.与远程的SSH目录保持同步

(1)上行:rsync  [选项]  user@host:远程目录  本地目录
(2)下行:rsync  [选项]  本地目录  user@host:远程目录

3.服务端要求

开启sshd服务,并提供授权的用户和密码
example:下行同步,将远程主机/mnt/目录备份到本地
(1)查看远程主机13/mnt/下的内容
	[root@rsync01 ~]# rsync root@192.168.4.13:/mnt/
		drwxr-xr-x             36 2019/06/14 10:57:20 .
		-rw-r--r--              0 2019/06/14 10:57:15 zhang.txt
		drwxr-xr-x              6 2019/06/14 10:57:20 rsync

(2)将远程主机的/mnt/同步到本机的/mnt/下

[root@rsync01 mnt]# rsync -azP root@192.168.4.13:/mnt/ /mnt/
	receiving incremental file list
	./
	zhang.txt
		      0 100%    0.00kB/s    0:00:00 (xfr#1, to-chk=1/3)
	rsync/

(3)确认同步结果

[root@rsync01 mnt]# ll
	总用量 0
	drwx------ 5 root root 97 1月  26 13:23 grub2
	drwxr-xr-x 2 root root  6 6月  14 10:57 rsync
	drwx------ 3 root root 17 6月  14 10:26 systemd-private-6fb11f3eca6743f59493ef651a95e67f-chronyd.service-ye6ea0
	drwx------ 3 root root 17 6月  11 08:05 systemd-private-acc9c37846fe439e96ed2b1fa01a8a21-chronyd.service-J6KHMq
	-rw-r--r-- 1 root root  0 6月  14 10:57 zhang.txt

#########################
example:上行同步

(1)确认本地目录大小
	[root@rsync01 ~]# du -sh /etc/
		30M	/etc/
(2)将本地/etc上传到远程主机的/opt下
	[root@rsync01 ~]# rsync -avP /etc root@192.168.4.13:/opt/
(3)远程主机上确认
	[root@rsync02 ~]# du -sh /opt/etc/
		30M	/opt/etc/
##########确认同步结果
[root@rsync01 ~]# ls /etc | md5sum
5d58386b47dda43f93ac32e553c4c0fe  -
[root@rsync02 ~]# ls /opt/etc/ | md5sum 
5d58386b47dda43f93ac32e553c4c0fe  -

#############################

总结

rsync优点:与传统的tar/cp相比,具有安全性高/备份迅速/支持增量备份等优点,用rsync解决对实时性要求不高的数据备份要求,例如定期的备份文件服务器数据到远端服务器,对本地磁盘定期做数据镜像等
rsync缺点:(1)rsync同步数据时,需要扫描所有文件后进行对比,进行差量传输.如果文件非常大,执行rsync效率会低下
(2)不能实时的去监测/同步数据.
虽然它可以通过linux守护进程的方式进行触发同步,但是两次触发动作一定会有时间差,这样就导致了服务端和客户端数据可能出现不一致,无法在应用故障时完全的恢复数据。基于以上原因,rsync+inotify组合出现了!
(详见RSYNC+INOTIFY基础(二))

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

河 静

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值