一、rsync

1.1rsync是啥

相当于cp、scp、rm等工具,但优于这些工具,主要用在数据备份

1.2、rsync安装

yum -y install rsync
--update 客户端删除文件 ,服务端不会删除,如果客户端再创建同名文件 ,会覆盖服务端文件

1.3、Rsync 服务器端配置修改

  vi  /etc/rsyncd.conf

如下注释要删掉,不然 不能用。。
##rsyncd.conf start##
uid = rsync ##进程对应的用户,是虚拟用户。远端的命令使用rsync访问共享目录
gid = rsync ##进程对应的用户组。
use chroot = no ##安全相关
max connections = ##最大连接数
timeout = ##超时时间
pid file = /var/run/rsyncd.pid ##进程对应的进程号文件
lock file = /var/run/rsyncd.lock ##锁文件
log file = /var/log/rsyncd.log ##日志文件
[bk] ###模块名称,对应客户端 rsync -avz /tmp/ rsync_backup@47.106.130.253::bk
path = /backup ###服务器提供访问的目录
ignore errors ##忽略错误
read only = false ##可写
list = false ##不能列表
hosts allow = 172.16.1.0/ ##允许的ip地址
##hosts deny = 0.0.0.0/
auth users = rsync_backup ##虚拟用户
secrets file = /etc/rsync.password ###虚拟密码

参考:https://blog.csdn.net/qq_41816540/article/details/80611757

#创建用户
useradd rsync -s /sbin/nologin -M
#创建目录
mkdir /backup
chown -R rsync.rsync /backup/
#创建密码
echo "rsync_backup:123456" >>/etc/rsync.password
chmod /etc/rsync.password
#启动服务
rsync --daemon
ps -ef |grep rsync|grep -v grep ##查看进程有没有启动
netstat -lntup|grep rsync
#加入开机启动
systemctl enable rsyncd.service

1.4、启动rsync服务端

#centos7启动
systemctl start rsyncd.service

1.5、rsync客户端命令

  推拉都是客户端操作

  

·  

rsync中的-delete参数是指“ 删除那些DST中SRC没有的文件”

#创建客户端密码文件
echo "oldboy" >>/etc/rsync.password
chmod 600 /etc/rsync.password
rsync -avz /tmp/ rsync_backup@47.106.130.253::bk --password-file=/etc/rsync.password
#排除某个文件
rsync -avz --exclude=a /tmp/ rsync_backup@47.106.130.253::bk --password-file=/etc/rsync.password

#排除多个文件

rsync -avz --exclude={a,b} /tmp/ rsync_backup@47.106.130.253::bk --password-file=/etc/rsync.password

二、Inotify

2.1、Inotify是啥

  实时监控文件变化,最多支持200-300并发

2.2、查看是否支持

ls -l /proc/sys/fs/inotify

2.3安装Inotify

wget http://github.com/downloads/rvoicilas/inotify-tools/inotify-tools-3.14.tar.gz
tar xzvf inotify-tools-3.14.tar.gz
cd inotify-tools-3.14
./configure --prefix=/usr/local/inotify-tools
make
make install

2.4、Inotify命令

/usr/local/inotify-tools/bin/inotifywait -mrq  --format '%d/%m/%y %H:%M' -c create,delete,close_write /data 
-r recursive递归
-q quiet打印好少信息
-m monitor始终保持监听
--format 监控到的文件格式

2.5、脚本实时同步

 2.6优化

关键参数说明:
在/proc/sys/fs/inotify目录下有三个文件,对inotify机制有一定限制
max_user_watches:设置inotifywait或inotifywatch命令可以监视的文件数量(单进程)
max_user_instances:设置每个用户可以运行的inotifywait或inotifywatch命令的进程数
max_queued_events:设置inotify实例事件(event)队列可容纳的事件数量
echo "50000000"> /proc/sys/fs/inotify/max_user_watches
echo "50000000"> /proc/sys/fs/inotify/max_queued_events

Inotify安装报错

报错 libinotifytools.so.: cannot open shared object file
32位系统:ln -s /usr/local/lib/libinotifytools.so. /usr/lib/libinotifytools.so.
64位系统:ln -s /usr/local/lib/libinotifytools.so. /usr/lib64/libinotifytools.so.

rsync+inotify的更多相关文章

  1. 通过rsync+inotify实现数据的实时备份

    我讲到过利用rsync实现数据的镜像和备份,但是要实现数据的实时备份,单独靠rsync还不能实现,本文就讲述下如何实现数据的实时备份. 一.rsync的优点与不足 与传统的cp.tar备份方式相比,r ...

  2. rsync+inotify实现远程数据备份

    一.rsync的基本介绍 1.  什么是rsync Rsync是一款开源的.快速的.多功能的.可以实现增量的本地货远程数据镜像同步备份的优秀工具,Rsync使用与unix,linux,windows等 ...

  3. 通过rsync+inotify实现数据实时备份同步

    一.环境描述 测试环境 需求:服务器A与服务器B为主备服务模式,需要保持文件一致性,现采用sersync基于rsync+inotify实现数据实时同步 环境描述: 主服务器172.26.7.50 ,从 ...

  4. rsync+inotify实现实时同步案例--转

    转自:http://chocolee.blog.51cto.com/8158455/1400596 随着应用系统规模的不断扩大,对数据的安全性和可靠性也提出的更好的要求,rsync在高端业务系统中也逐 ...

  5. Rsync+inotify实现实时同步

    1.1 inotify介绍 inotify是一种强大的.细粒度的.异步的文件系统事件控制机制.linux内核从2.6.13起,加入了inotify支持,通过inotify可以监控文件系统中添加.删除. ...

  6. rsync+inotify实时同步环境部署记录

    随着应用系统规模的不断扩大,对数据的安全性和可靠性也提出的更好的要求,rsync在高端业务系统中也逐渐暴露出了很多不足.首先,rsync在同步数据时,需要扫描所有文件后进行比对,进行差量传输.如果文件 ...

  7. Server Data Synchronization Via Linux rsync、rsync+inotify Between Load Balance Server

    目录 . 远程文件同步的应用场景 . rsync+crontab . rsync+inotify 1. 远程文件同步的应用场景 在负载均衡集群的应用场景中,往往在多台web server的前端有一个提 ...

  8. rsync+inotify 实现服务器之间目录文件实时同步(转)

    软件简介: 1.rsync 与传统的 cp. tar 备份方式相比,rsync 具有安全性高.备份迅速.支持增量备份等优点,通过 rsync 可 以解决对实时性要求不高的数据备份需求,例如定期的备份文 ...

  9. linux rsync +inotify 实现 实时同步

    前言:     rsync可以实现触发式的文件同步,但是通过crontab守护进程方式进行触发,同步的数据和实际数据会有差异,而inotify可以监控文件系统的各种变化,当文件有任何变动时,就触发rs ...

  10. rsync+inotify实现服务器数据同步

    一.什么是rsync rsync,remote synchronize是一款实现远程同步功能的软件,它在同步文件的同时,可以保持原来文件的权限.时间.软硬链接等附加信息.rsync是用 “rsync算 ...

随机推荐

  1. 【Finchley】【升级变更】Spring Cloud 升级到Finchley版本后需要注意的地方

    Spring Boot 2.x 已经发布了很久,现在 Spring Cloud 也发布了 基于 Spring Boot 2.x 的 Finchley 版本,现在一起为项目做一次整体框架升级. 升级前 ...

  2. Ubuntu关机时间过长,总是停在logo界面

    有时候我们总能遇到ubuntu关机的时候卡住,无法关机,一查看发现是" a stop job is running..." 然后后面接着一串等待时间. 这时候我们需要修改一下sys ...

  3. Gtk 窗口,控件,设置(添加图片等)

    1.关于窗口   // 创建顶层窗体,后面有POPUP的 GtkWidget *main_window; main_window = gtk_window_new (GTK_WINDOW_TOPLEV ...

  4. 用命令bat打开某个文件或文件夹

    打开文件或文件夹可以用start命令,start命令会根据文件关联的程序自动调用关联的程序打开文件和文件夹. 可以用记事本写如下命令,之后改扩展名为.bat即可 打开文件夹 start "& ...

  5. 关于set和map迭代器支持的运算

    问题: 曾经想遍历一个set遍历.当时是这样写的: set<int>::iterator b = a.begin()+1 后来发现程序报错.究其原因是,set迭代器不支持加减数操作. 查看 ...

  6. 真刀实战地搭建React+Webpack+Express搭建一个简易聊天室

    一.前面bb两句 因为自惭(自残)webpack配置还不够熟悉,想折腾着做一个小实例熟悉.想着七夕快到了,做一个聊天室自己和自己聊天吧哈哈.好了,可以停止bb了,说一下干货. 二. 这个项目能学到啥? ...

  7. 基于 Python 和 Pandas 的数据分析(6) --- Joining and Merging

    这一节我们将看一下如何通过 join 和 merge 来合并 dataframe. import pandas as pd df1 = pd.DataFrame({'HPI':[80,85,88,85 ...

  8. 【BZOJ】3142: [Hnoi2013]数列

    题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=3142 12年也有一个组合数学...(这几年的画风啊.... 考虑直接去做:DP? DP+容 ...

  9. vs 2013 编译cocos2d-x-3.9

    下载地址:链接: https://pan.baidu.com/s/1IkQsMU6NoERAAQLcCUMcXQ 提取码: p1pb 下载完成后,解压 进入build 目录 使用vs 2013 打开工 ...

  10. java之双缓冲的代码粘贴

    private Image offScreenImage = null; public void update(Graphics g) { if(offScreenImage == null) off ...