环境 系统 IP地址
主服务器 CentOS7.4 192.168.1.1
备份服务器 CentOS7.4 192.168.1.2

一、备份服务器

安装rsync(备)

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

配置rsyncd.conf

  1. cat <<EOF> /etc/rsyncd.conf
  2. pid file = /var/run/rsync.pid
  3. log file = /var/log/rsync.log
  4. lock file=/var/run/rsync.lock
  5. secrets file = /etc/rsync.pw
  6. motd file = /etc/rsyncd.motd
  7. transfer logging = yes
  8. log format = %t %a %m %f %b
  9. syslog facility = local3
  10. [data]
  11. path = /data/test/
  12. comment = data
  13. exclude =
  14. port = 873
  15. uid = root
  16. gid = root
  17. timeout = 600
  18. max connections = 200
  19. use chroot = no
  20. read only = no
  21. list = no
  22. hosts allow = 192.168.1.1
  23. EOF

可以设置多个目录

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

建立密码认证文件

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

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

  1. cat <<EOF> /etc/rsyncd.motd
  2. ###############################
  3. # #
  4. # start rsync #
  5. # #
  6. ###############################
  7. EOF

启动rsync

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

开机启动rsync

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

二、主服务器

建立密码认证文件

  1. cat <<EOF> /etc/rsync.pw
  2. 123456
  3. EOF

测试开始

  1. /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

  1. yum install inotify-tools -y

新建inotify.sh文件同步

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

注意:

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

参考链接

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

三、研究

lrsync

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

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

  1. rsync安装配置及故障解决完全教程[window, 文件同步]

    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+rsync实现实时数据同步

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

  9. lsyncd替代inotify+rsync实现实时同步

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

随机推荐

  1. 探讨:你真的会用Android的Dialog吗?

    一个Bug前几日出现这样一个Bug是一个RuntimeException,详细信息是这样子的: 复制代码代码如下: java.lang.IllegalArgumentException: View n ...

  2. Java设计模式(三) Visitor(訪问者)模式及多分派场景应用

    基本概念 Visitor 封装一些作用于数据结构中的各元素的操作,不同的操作能够借助新的visitor实现.减少了操作间的耦合性 訪问者能够将数据结构和对数据的操作解耦,使得添加对数据结构的操作不须要 ...

  3. 转载: erlang连接mysql

    转自:http://blog.csdn.net/flyinmind/article/details/7740540 项目中用到erlang,同时也用到mysql.惯例,google. 但是,按照网上说 ...

  4. 多个进程对同一个监听套接字调用函数gen_tcp:accept/1

    源于<<erlang程序设计>>的第14章的14.1.4大约第197页. 未发现多个进程对同一个监听套接字调用函数gen_tcp:accept/1比单进程的效率更高或者更快.

  5. 让Flask-admin支持markdown编辑器

    前言 flask-admin 算是一个很不错的 flask 后台管理了,用它来做博客系统的管理后端再合适不过了,节约时间成本,避免重复造轮子,但是作为一个程序员,写文章怎么可以没有 markdown ...

  6. android SDK manager 快速更新【转】

  7. 双十二“MathType”限时6折特惠

    MathType是由美国Design Science公司开发功能强大的公式编辑器,专门用来对数学公式的编辑,与常见的文字处理软件和演示程序配合使用,能够在各种文档中加入复杂的数学公式和符号.双十二期间 ...

  8. HEVC 有损优化一

    前期通过X86汇编和C的优化,HEVC 编码有了大幅的提升,目前320x240可以到4~5 fps 了.从现在开始无损优化先放放(还有很大的优化空间),开始做有损优化.做有损优化,我们设定的前提是ps ...

  9. three.js obj转js

    js格式的模型文件是three.js中可以直接加载的文件.使用THREE.JSONLoader()直接加载,而不需要引用其它的loader插件. obj格式转js格式使用的是threejs.org官方 ...

  10. UVA 1203 - Argus(优先队列)

    UVA 1203 - Argus 题目链接 题意:给定一些注冊命令.表示每隔时间t,运行一次编号num的指令.注冊命令结束后.给定k.输出前k个运行顺序 思路:用优先队列去搞,任务时间作为优先级.每次 ...