inotify+rsync安装配置

时间:2023-01-23 13:21:42
环境 系统 IP地址
主服务器 CentOS7.4 192.168.1.1
备份服务器 CentOS7.4 192.168.1.2

一、备份服务器

安装rsync(备)

wget https://rsync.samba.org/ftp/rsync/src/rsync-3.1.3.tar.gz
tar -xf rsync-3.1.3.tar.gz
./configure --prefix=/usr/local/rsync
make && make install

配置rsyncd.conf

cat <<EOF> /etc/rsyncd.conf
pid file = /var/run/rsync.pid
log file = /var/log/rsync.log
lock file=/var/run/rsync.lock
secrets file = /etc/rsync.pw
motd file = /etc/rsyncd.motd
transfer logging = yes
log format = %t %a %m %f %b
syslog facility = local3
[data]
path = /data/test/
comment = data
exclude =
port = 873
uid = root
gid = root
timeout = 600
max connections = 200
use chroot = no
read only = no
list = no
hosts allow = 192.168.1.1
EOF

可以设置多个目录

#增加test1目录
[test1]
path = /data/test1
list = yes
ignore errors
comment = ucweb-file system
secrets file = /etc/rsync.pw
exclude = blank.png ; spinner.gif ; downsimple.png ; rails.png ; WEB-INF/

建立密码认证文件

cat <<EOF> /etc/rsync.pw
root:123456
EOF

配置rsyncd.motd文件,开始传送的时候会显示

cat <<EOF> /etc/rsyncd.motd
###############################
# #
# start rsync #
# #
###############################
EOF

启动rsync

/usr/local/rsync/bin/rsync --daemon --config=/etc/rsyncd.conf

开机启动rsync

echo '/usr/local/rsync/bin/rsync --daemon --config=/etc/rsyncd.conf'>>/etc/rc.d/rc.localer 

二、主服务器

建立密码认证文件

cat <<EOF> /etc/rsync.pw
123456
EOF

测试开始

/usr/local/rsync/bin/rsync -avH --port=873 --progress --delete /data/test/ root@192.168.1.3::data --password-file=/etc/rsync.pw

查看192.168.1.2上是否有同步

安装inotify-tools

yum install inotify-tools -y

新建inotify.sh文件同步

#!/bin/sh
# get the current path
CURPATH=`pwd`
/usr/bin/inotifywait -mr --timefmt '%d/%m/%y %H:%M' --format '%T %w %f' -e modify /data | while read date time dir file; do
FILECHANGE=${dir}${file}
# convert absolute path to relative
FILECHANGEREL=`echo "$FILECHANGE" | sed 's_'$CURPATH'/__'` /usr/bin/rsync -avH --port=873 --progress --delete /data/test/ root@192.168.1.2::data --password-file=/etc/rsync.pw
echo "At ${time} on ${date}, file $FILECHANGE was backed up via rsync"
done

注意:

如果仅仅是备份的话,不要带delete参数

参考链接

https://blog.csdn.net/liuzheng0915/article/details/52003942

三、研究

lrsync

https://www.cnblogs.com/zxci/p/6243574.html

inotify+rsync安装配置的更多相关文章

  1. rsync安装配置及故障解决完全教程&lbrack;window&comma; 文件同步&rsqb;

    Rsync是的全称是: remote synchronize, 也就是远程同步数据, 它是一款不错的文件同步软件,而且是免费的, 它在镜像保存整个目录树和文件系统的同时保持原来文件的权限.时间.软硬链 ...

  2. rsync安装配置实时同步

    一.简介 1.认识 Rsync(remote synchronize)是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件.Rsync使用所谓的“Rsync算法”来使本地和远 程两个主 ...

  3. centos rsync安装配置

    安装 1 yum -y install rsync ---------------------服务器安装------------------------------- 创建基础配置文件 1 2 3 4 ...

  4. inotify工具安装配置

    一.安装 1)  从内核和目录里面查看是否支持inotify [root@nfs01 ~]# uname -r 2.6.32-573.el6.x86_64 [root@nfs01 ~]# ls -l ...

  5. Linux系统inotify工具安装配置

    inotify主要功能 Inotify 是一个 Linux特性,它监控文件系统操作,比如读取.写入和创建.Inotify 反应灵敏,用法非常简单,并且比 cron 任务的繁忙轮询高效得多.学习如何将 ...

  6. Rsync安装配置

    一.先准备两台CentOS服务器,假定是 1.172.18.2.225(服务端) 需要配置rsyncd.conf文件 2.172.18.2.227(客户端) 不需要配置rsyncd.conf文件 二. ...

  7. CentOS7 安装配置rsync

    centos7自带rsync,今天简单记录下. rsync安装配置步骤 服务器端: 1.修改默认配置文件/etc/rsyncd.conf,该成如下: # /etc/rsyncd: configurat ...

  8. Inotify&plus;rsync实现实时数据同步

    使用rsync可以实现数据同步,但是即使使用crontab定时任务最小执行间隔为1分钟,在数据实时性要求比较高场合需使用inotify+rsync实现实时同步 下载inotify wget https ...

  9. lsyncd替代inotify&plus;rsync实现实时同步

    因公司业务需要需要实时同步日志文件,刚一开始使用的是inotify+rsync来实现实时同步,但时间久而久之发现同步的速度越来越慢,往往延迟好几个小时.查了一下网上的inotify+rsync方案基本 ...

随机推荐

  1. Android开发资源获取国内代理(转载)

    Android Dev Tools官网地址:www.androiddevtools.cn 收集整理Android开发所需的Android SDK.开发中用到的工具.Android开发教程.Androi ...

  2. Web自动化框架搭建——前言

    1.web测试功能特性 a.功能逻辑测试(功能测试),这一块所有系统都是一致的,比如数据的添加.删除.修改:功能测试案例设计感兴趣和有时间的话可以另外专题探讨: b.浏览器兼容性测试,更重要的是体验这 ...

  3. python首次尝试——hello world

    百忙之中抽空学习python,但是令人惊讶的是连hello world都写不出来.

  4. 监视&sol;etc&sol;passwd文件是否正常

    帮助监视/etc/passwd文件是否正常(P90 练习6.7) 1)找出有UID0的所有项 2)找出有重复UID的所有项 3)找出有重复登录名的所有项 4)找出没有口令的所有项 5)找出没有作废日期 ...

  5. C陷阱与缺陷之语法陷阱

    2.1理解函数声明 不论什么C变量的声明都由两部分组成:类型以及一组类似表达式的声明符号.比如 float f; 这个声明的含义是:当对其求值时,表达式f和g的类型为浮点数类.由于声 明符与表达式的相 ...

  6. PHP&lowbar;保留两位小数而且四舍五入&lowbar;保留两位小数而且不四舍五入

    php保留两位小数而且四舍五入 $num = 123213.666666; echo sprintf("%.2f", $num); php保留两位小数而且不四舍五入 $num =  ...

  7. java变量初始化

    java全局变量会自动初始化,但局部变量不会自动初始化.当我们新建一个对象的时候,java会申请一个区域存放类的数据,而成员变量就是类的数据,也是放在这个内存区域中,jvm申请内存时初始化.而方法中变 ...

  8. openwrt杂记

    /etc/config/wireless是在boot启动时生成的. 代码在/etc/init.d/boot中,如下: /sbin/wifi detect > /tmp/wireless.tmp  ...

  9. WAMPServer安装关于MSVCR110&period;dll丢失的解决办法

    安装完成后出现如下提示: 解决办法 请参阅:计算机中丢失 msvcr110.dll 怎么办 为了防止原地址失效,下面简单说下原地址的内容: 到  http://www.microsoft.com/zh ...

  10. Day02&lowbar;Python基础学习今日总结

    1.模块(库):是别人写好的函数封装成一个名字,内部有丰富的功能可以直接调用.分为标准库和第三方库.标准库直接导入即可使用,而第三方库需要下载安装才能用. 2.在项目中导入库时,自建的文件名不能喝库名 ...