配置rsync+inotify实时单向同步

定期同步的缺点:

执行备份的时间固定,延期明显,实时性差

当同步源长期不变化时,密集的定期任务是不必要的(浪费资源)

实时同步的优点:

一旦同步源出现变化,立即启动备份,实时性好

只要同步源无变化,则不执行备份,节省资源

创建主配置文件(vim /etc/rsyncd.conf)

address = 192.168.88.10 #rsync服务绑定IP

port 873 #默认服务端口873

log file = /var/log/rsyncd.log #日志文件位置

pid file = /var/run/rsyncd.pid #进程号文件位置

[web] #共享名:用来连接是写在url上的,切记 这里推荐共享名和共享目录名一样最好

comment = web directory backup #共享描述话语

path = /filesrc #实际共享目录

read only = no #是否仅允许读取

dont compress = *.gz *.bz2 #哪些文件类型不进行压缩

auth users = user1 #登录用户名自写

secrets file = /etc/rsyncd_users.db #认证所需账户密码文件(需自行创建-同上)

b.创建认证所需账户密码文件

# vim /etc/rsyncd_users.db

user1:123456

# chmod 600 /etc/rsyncd_users.db 须修改权限,否则登录报错

c.启动服务

# rsync --daemon

# netstat -antp | grep :873

d.设置映射用户对共享目录有权限(r)

# setfacl -m u:nobody:rwx /filesrc

inotify简介

inotify 是一个 Linux 内核特性,它监控文件系统,并且及时向专门的应用程序发出相关的事件警告,比如删除、读、写和卸载操作等。要使用 inotify,必须具备一台带有

2.6.13 版本的内核操作系统。

inotify两个监控命令:

inotifywait:用于持续监控,实时输出结果(常用)

inotifywatch:用于短期监控,任务完成后再出结果

inotify部署

yum -y install gcc*

tar -xf inotify-tools-3.14.tar.gz

cd inotify-tools-3.14

./configure && make && make install

inotifywait命令格式

格式:inotifywait -mrq -e 监控动作1,监控动作2 /监控目录 &

示例:inotifywait -mrq -e create,delete /filesrc &

-m:始终保持事件监听状态

-r:递归查询目录

-q:只打印监控事件的信息

监控动作:modify(内容),create,attrib(权限),move,delete

利用rsync+inotifywait结合脚本实现单向实时同步

vim src.sh

!/bin/bash

a="inotifywait -mrq -e create,delete /filesrc" filesrc是指共享的目录名

b="rsync -avz /filesrc/* root@192.168.88.20:/filedst" filedst是指同步到对方的那个目录

$a | while read directory event file #while判断是否接收到监控记录

do

$b

done

注:用户登录时要求免密码验证

脚本最好放在家目录下运行。

实验结果验证

在服务器端创建,删除文件,查看备份端是否正常

拓展:调整inotify监控的文件数量

调整inotify内核参数(/etc/sysctl.conf)

mak_queue_events 监控队列大小

mak_user_instances 最多监控实例数

max_user_watches 每个实例最多监控文件数

rsync单项同步的更多相关文章

  1. Rsync文件同步

    Rsync文件同步 本章结构 关于rsync 1.一款增量备份工具,remote sync,远程同步,支持本地复制或者与其他SSH.rsync主机同步,官方网站:http://rsync.samba. ...

  2. 真正的inotify+rsync实时同步 彻底告别同步慢

    真正的inotify+rsync实时同步 彻底告别同步慢       http://www.ttlsa.com/web/let-infotify-rsync-fast/     背景 我们公司在用in ...

  3. rsync命令(同步/备份数据)

    rsync命令rsync命令是一个远程数据同步工具,可通过 lam/wan快速同步多台主机间的文件.rsync使用所谓的 "rsync算法"来使用本地和远程两个主机之间的文件达到同 ...

  4. Linux实战教学笔记21:Rsync数据同步工具

    第二十一节 Rsync数据同步工具 标签(空格分隔): Linux实战教学笔记-陈思齐 ---本教学笔记是本人学习和工作生涯中的摘记整理而成,此为初稿(尚有诸多不完善之处),为原创作品,允许转载,转载 ...

  5. 架设rsync服务器同步数据

    什么是rsync rsync 是一个快速增量文件传输工具,它可以用于在同一主机备份内部的备分,我们还可以把它作为不同主机网络备份工具之用.本文主要讲述的是如何自架rsync服 务器,以实现文件传输.备 ...

  6. linux rsync实时同步

    rsync同步 同步与复制的差异:复制:完全拷贝源到目标同步:增量拷贝,只传输变化过的数据 同步操作:remote sync 远程同步支持本地复制,或与其他ssh,rsync主机同步.官方网站:htt ...

  7. Rsync数据同步工具

                                        Rsync数据同步工具 什么是Rsync? Rsync是一款开源的.快速的.多功能的,可以实现全量及增量的本地或原程数据同步备份 ...

  8. Rsync数据同步服务

    Rsync数据同步服务 Rsync软件适用与unix/linux/windows等多种操作系统平台 Rsync是一款开源的,快速的,多功能的,可实现全量及增量的本地或远程数据同步备份的优秀工具,可以实 ...

  9. rsync 文件同步和备份

    rsync 是同步文件的利器,一般用于多个机器之间的文件同步与备份,同时也支持在本地的不同目录之间互相同步文件.在这种场景下,rsync 远比 cp 命令和 ftp 命令更加合适,它只会同步需要更新的 ...

随机推荐

  1. APIO 2020 爆零记

    Day -3 这几天集训,貌似大家都没有把APIO放在心上... Day 0 试了下机(非官方选手)... 感觉界面还是比较清新,(至少吊打BZOJ一个数量级) (话说APIO2020中国镜像为什么还 ...

  2. .NetCore简单封装基于IHttpClientFactory的HttpClient请求

    IHttpClientFactory是什么?为什么出现了IHttpClientFactory 一.IHttpClientFactory是什么? IHttpClientFactory是.netcore2 ...

  3. 把数据转化为JSON格式用ajax进行前后端交互

    接着在https://www.cnblogs.com/dong973711/p/10907733.html的基础上做验证. 从前端提交数据 前端页面,submit.html <!DOCTYPE ...

  4. 八位“Booth二位乘算法”乘法器

    目录 八位"Booth二位乘算法"乘法器 原理 补码乘法器 Booth一位乘 Booth二位乘 设计思路 减法变加法 vivado特性 设计文件 综合电路 测试文件 仿真波形 八位 ...

  5. Css gray 无法覆盖IE10

    网站变灰这个效果很常见,在我这里暂时没有找到最优解决方式, 先把今天的研究结果记录一下. 第一种方案 : 对所有静态资源文件进行灰度处理,得到新一个资源目录,例如asset_ori 原始资源    a ...

  6. BATJTMD,大厂招聘,都招什么样Java程序员?

    作者:小傅哥 博客:https://bugstack.cn 沉淀.分享.成长,让自己和他人都能有所收获! 一.前言 Java学到什么程度可以找工作? 最近总看到类似这样的问题,也有一些工作3年左右的小 ...

  7. ubutun 服务器中文设置

    在连接到服务器时,我们看不到图形界面,按照常规的安装搜狗输入法行不通,查阅相关的资料找到一篇可以解决的 sudo apt-get update 如果出现 E: 无法下载 404 Not Found I ...

  8. 主动关闭 tcp_timewait_state_process 处理

    正常情况下主动关闭连接的一端在连接正常终止后,会进入TIME_WAIT状态,存在这个状态有以下两个原因(参考<Unix网络编程>):      1.保证TCP连接关闭的可靠性.如果最终发送 ...

  9. Linux踩坑之云服务器 ssh 连接不上

    前奏:今天没事处理一下之前远程不了Linux桌面的问题时,找到一个解决方法(开始入坑):                     systemctl set-default graphical.tar ...

  10. rhel8/centos8网络网卡设置ping不通,连接不上,各种问题

    [解决问题]: 1-ping不通宿主机 2-ping不通外网 3-ping不通网关 4-网络中心VMnet8 VMnet1 VMnet0 不见了 5-rhel8网络设置全攻略 环境:win10宿主机+ ...