`
owen-zhang
  • 浏览: 27450 次
文章分类
社区版块
存档分类
最新评论

linux设置rsync+inotify实时同步文件

 
阅读更多

应用场景:

同步接收方:test01

接收目录:/opt/software/test/a/

同步发起方:test02

同步目录:/opt/software/test/a/

 

在test02的 /opt/software/test/a/ 目录下做新增、创建、删除、移动操作都会同步到test01的/opt/software/test/a/目录

 

第一步:安装rsync(test01和test02都要安装)

yum install rsync

 

第二步:安装inotify(同步发起方test02安装)

解压inotify

 

[root@test02 software]# tar zxvf inotify-tools-3.14

[root@test02 inotify-tools-3.14]# ./configure --prefix=/usr/local/inotify

[root@test02 inotify-tools-3.14]# make

[root@test02 inotify-tools-3.14]# make install

 

 

第三步:配置rsync(同步接收方test01)

在/etc 目录下新建rsyncd.conf,内容如下

pid file=/var/run/rsyncd.pid
port=873

#test01所在ip地址
address=192.168.1.114
uid=root
gid=root
use chroot=yes

#test02 所在ip地址
hosts allow=192.168.1.107
hosts deny=*
max connections=5
motd file=/etc/rsyncd.motd
log file=/var/log/rsync.log
#transfer logging=yes
log format=%t %a %m %f %b
syslog facility=local3
timeout=300
read only=no
write only=no
[ggly]
path=/opt/software/test/a/
auth users=owenzhang
list=yes
igonre errors
secrets file=/etc/rsyncd.secrets
comment=ggly rsyc files

 

在/etc 目录下新建 rsyncd.secrets并赋予600权限内容如下

#用户:密码,密码不一定要和linux用户的密码一致,用户必须是linux用户

owenzhang:123123

 

在/etc目录下新建 rsyncd.motd,内容随便写,rsync的欢迎信息

 

运行test01的rsync

service xinetd start

没有安装xinetd 可以使用 yum install xinetd 来安装

 

第四步:配置inotify(同步发起方test02)

新建文件 gglyrsync.sh 并赋予执行权限,文件名、位置随便,内容如下

 

#!/bin/bash

#同步接收方ip
client=192.168.1.114
src=/opt/software/test/a/

#同步接收方配置的rsync模块名
dest=ggly

#同步接收方鉴权时的用户
user=owenzhang
/usr/local/inotify/bin/inotifywait -mrq --timefmt '%d/%m/%y %H:%M' --format '%T %w%f%e' -e modify,delete,create,move,attrib $src | while read files
do
/usr/bin/rsync -vzrtopgq --delete --progress --password-file=/opt/software/rsyncpasswd $src $user@$client::$dest
done

 

在/opt/software/目录下新建rsyncpasswd文件,内容为test01中rsyncd.secrets中owenzhang对应密码即123123并赋予600权限

 

 

最后运行 gglyrsync.sh 就可以了。

 

分享到:
评论

相关推荐

    CentOS下用rsync+inotify实现实时同步

    CentOS 7下用rsync+inotify实现实时同步可以实现文件之间的同步备份。下面是相关知识点的详细解释: 1. rsync简介 rsync是一种快速、可靠、安全的文件同步工具。它可以在本地或远程主机之间同步文件,具有高效、...

    rsync+inotify实时同步用到的资源

    结合rsync和inotify-tools,可以构建实时文件同步系统。当inotify检测到文件或目录有变化时,可以触发rsync进行同步操作。这样,任何在源目录中的改动都会立即被复制到目标目录,确保数据的一致性。 以下是一个基本...

    rsync+inotify 实时远程同步

    Inotify 是一个 Linux 内核提供的文件系统事件监控机制,它可以实时监控文件系统的变化,从而实现实时同步。 本文将详细介绍如何使用 Rsync + inotify 实现实时远程同步。我们将在服务器之间建立 Rsync 服务器,...

    rsync+inotify实现服务器之间目录文件实时同步

    ### rsync+inotify 实现服务器之间目录文件实时同步 #### 软件简介与应用场景 **rsync** 是一种高效且广泛使用的文件同步工具,主要用于远程数据备份、镜像和迁移场景。相较于传统的 `cp` 和 `tar` 备份方式,...

    rsync+inotify.zip

    例如,可以在一个目录上设置inotify监听,一旦有文件变动,就触发rsync进行同步。这样的组合在Web开发中特别有用,可以实现实时编译、部署静态资源,如CSS、JavaScript和图片等。 在实际应用中,可以编写脚本或使用...

    rsync + inotify实时同步项目详细笔记实战案例

    rsync 是一个功能强大的文件同步工具,而 inotify 是一种 Linux 内核提供的文件系统事件侦听机制。通过将这两种技术结合使用,可以实现实时同步项目的需求。 rsync 服务器配置 在 rsync 服务器上,我们需要配置 ...

    linux下Rsync+sersync实现文件数据实时同步

    `sersync`是一个基于`inotify`的文件同步工具,专为Linux设计,它能监听文件系统的变动并实时同步。与Rsync相比,sersync更专注于实时性和自动化,尤其适合监控大量小文件的变化。 1. **实时性**:sersync通过监听...

    rsync+inotify开机自启动实时同步增量备份

    rsync+inotify开机自启动实时同步增量备份是通过使用rsync与inotify结合来实现Linux系统中文件的实时同步和增量备份。rsync是一个快速且灵活的文件传输工具,而inotify则是一个内核特性,它可以监控文件系统的变化。...

    Centos6.3下rsync+inotify安装配置

    而 inotify 是 Linux 内核提供的一种文件系统事件监控机制,可以从文件系统级别的细粒度事件(如创建、删除、修改、移动等)出发,触发 rsync 的同步操作,从而避免了传统 crond 定时任务可能导致的效率低下和实时性...

    4-rsync+inotify实时上行同步.docx

    为了实现实时上行同步,即将客户端的文件变化同步到服务器端,可以利用inotify监控客户端文件系统的变动,并通过rsync来同步这些变化。 1. **服务器端配置**: - **修改配置文件**: - 设置用户权限(`uid` 和 `...

    rsync+inotify数据实时同步.pdf

    本文档将详细介绍如何利用rsync和inotify在Linux系统中实现文件的实时同步。 首先,rsync是一种基于Rsync算法的远程同步工具,能够高效地同步文件和目录,支持本地文件系统和远程文件系统之间的同步。它能够检测...

    rsync+inotify说明.docx

    《rsync+inotify在Linux中的文件实时同步详解》 rsync+inotify是一个高效且实用的文件实时同步方案,广泛应用于服务器之间的数据备份和同步。rsync是一款强大的文件复制工具,而inotify则是Linux内核提供的一个文件...

    rsync + inotify 实现异地文件数据同步

    本文将详细探讨如何使用rsync结合inotify工具实现高效、实时的异地文件数据同步。 rsync是一款强大的文件同步工具,它能快速地比较并同步本地或远程文件,支持增量传输,从而节省网络带宽。rsync的核心特性包括: ...

    rsync+inotify实现数据的实时备份.pdf

    rsync+inotify 实现数据的实时备份 一、rsync 简介 rsync 是一个远程数据同步工具,...rsync 是一个功能强大且灵活的文件同步工具,通过 rsync 和 inotify 的结合,可以实现数据的实时备份,提高数据安全和可用性。

    一键实现rsync+inotify的小脚本

    自创(不喜勿喷):通过rsync+inotify两个服务自动化实现实时同步的脚本 方便linux使用者使用的脚本,望大佬完善信息,但不要搞破坏,谢谢使用 #### 软件架构 软件架构说明 ssh免密 rsync+inotify两个服务结合 ###...

Global site tag (gtag.js) - Google Analytics