rsync默认端口:873
xinetd默认服务

inotify参数详解
inotifywait
-r:递归
-q:只打印事件
-m:始终监听事件
--excludei:排除
--timefmt:时间格式
--format:输出的格式
-e:监控的事件:
access:文件或目录被读
modify:文件或目录被修改
attrib:文件或目录属性被改变
close:文件或目录被关闭
open:文件或目录被打开
moved_to:文件或目录被移走
move:文件或目录被移动来
create:创建
delete:删除
umount:卸载

inotifywait --mrq -e create /backup    监控目录被create的事件

服务器端:
1.mkdir /cicro/src
1.上传rsync-3.1.1.tar.gz和inotify-tools-3.14.tar.gz到cicro/src文件夹下
2.tar -xzvf rsync-3.1.1.tar.gz
3.tar -xzvf inotify-tools-3.14.tar.gz
4.cd inotify-tools-3.14
5../configure --prefix=/usr/local/inotify
6.make
7.make install
cd /proc/sys/fs/inotify/
-rw-r--r-- 1 root root 0 Mar 31 21:06 max_queued_events        #限制文件
-rw-r--r-- 1 root root 0 Mar 31 21:06 max_user_instances
-rw-r--r-- 1 root root 0 Mar 31 21:06 max_user_watches

cd /usr/local/inotify/
mkdir conf
cd conf
vim inotfiy_list
/cicro/wcm
@/cicro/wcm/as/apache/logs
@/cicro/wcm/as/tomcat/logs
@/cicro/wcm/logs
@/cicro/wcm/license

9.cd ../rsync-3.1.1
10../configur --prefix=/usr/local/rsync
11.make
12.make install
mkdir /usr/local/rsync/{passwd,log,conf}
cd /usr/local/rsync/passwd/            #创建密码文件
echo "cicro123"    > passwd.conf            
chmod 600 passwd.conf
cd ../conf
vim exclude_list.conf
as/apache/logs/
as/tomcat/logs/
logs/
license/

脚本:
#!/bin/bash
#rsync+inotify

HOST=192.168.1.230
SRC=/cicro/wcm
DST=rsync
PASSWD=/usr/local/rsync/passwd/passwd.conf
INOTIFY_HOME=/usr/local/inotify
INOTIFY_EXCLUED=/usr/local/inotify/conf/inotfiy_list
RSYNC_HOME=/usr/local/rsync
RSYNC_EXCLUDE=/usr/local/rsync/conf/exclude_list.conf
USER=rsync

$INOTIFY_HOME/bin/inotifywait -mrq --exclude "(.log|.data)$" --fromfile $INOTIFY_EXCLUED --timefmt '%d/%m/%y %H:%M' --format '%T %w%f%e' -e close_write,delete,create,attrib,moved_to,move $SRC | while read files
do
$RSYNC_HOME/bin/rsync -vzlHrtopg --delete --progress --password-file=$PASSWD --exclude-from $RSYNC_EXCLUDE $SRC $USER@$HOST::$DST
echo "${files} was rsynced" >>/$RSYNC_HOME/log/rsync.log 2>&1
done

客户端:
cd ../rsync-3.1.1
../configur --prefix=/usr/local/rsync
.make
.make install

cd /usr/local/rsync/
mkdir conf log passwd
cd conf

vim rsync.conf
uid = root
gid = root
use chroot = no
max connections = 10
strict modes = yes
pid file = /var/run/rsyncd.pid  
lock file = /var/run/rsync.lock  
log file = /usr/local/rsync/log/rsyncd.log      #日志文件
[rsync]                        #对应服务器端的模式
path = /home                    #传过来文件所在位置
comment = web file
ignore errors
read only = no
write only = no
hosts allow = 192.168.2.233            #服务器ip
hosts deny = *
list = false
uid = root
gid = root
auth users = rsync                #默认用户
secrets file = /usr/local/rsync/passwd/passwd.conf    #密码文件

cd ../passwd
vim passwd.conf
rsync:cicro123
chmod 600 /usr/local/rsync/passwd/passwd.conf

/usr/local/rsync/bin/rsync --daemon --config=/usr/local/rsync/conf/rsync.conf     修改配置文件,需要写到开机脚本

service xinetd restart
chkconfig xinetd on

不需要发送的文件夹:
/cicro/wcm/as/apache/logs
/cicro/wcm/as/tomcat/logs
/cicro/wcm/logs
/cicro/wcm/license

rsync+inotity的更多相关文章

  1. 二十九、rsync+inotity实时监控同步工具

    一.场景应用:                                    客户通过url访问资源(查询,下载等),并发量是非常高的,所以运用负载均衡分担web服务器的压力,在后端连接不同的 ...

  2. CentOS 7 rsync+inotify实现实时同步

    测试环境如下: inotify-slave IP : 172.16.0.222 inotify-master IP : 172.16.0.233 对两台机的要求: 安装依赖包gcc: yum inst ...

  3. rsync 笔记之 list

    通过 rsync --list-only 可以列出可用的 文件/目录或者 module 下面两者的含义是完全不同的: rsync --list-only root@192.168.4.140: 使用系 ...

  4. 配置rsync服务,数据同步。

    这部分设计服务器端和客户端. [服务器端] 如果服务器没有安装rsync服务则使用yum安装rsync服务. yum install rsync 然后 vim /etc/xinetd.d/rsync ...

  5. 使用rsync同步目录

    本文描述了linux下使用rsync单向同步两个机器目录的问题. 使用rsync同步后可以保持目录的一致性(含删除操作). 数据同步方式 从主机拉数据 备机上启动的流程 同步命令: rsync -av ...

  6. linux rsync配置文件参数详解

    一.全局参数 在[moudle]之前的参数都是全局参数,也可以在全局参数下定义部分模块参数,这时该参数的值就是所有模块的默认值. port:指定后台程序使用的端口号,默认是873 logfile:指定 ...

  7. inotify+rsync实现实时同步部署

    1.1.架构规划 1.1.1架构规划准备 服务器系统 角色 IP Centos6.7 x86_64 NFS服务器端(NFS-server-inotify-tools) 192.168.1.14 Cen ...

  8. rsync同步架构

    1.1 rsync服务器端配置 1.1.1 查看服务器端rsync版本 1.1.2 创建配置文件 默认安装好rsync程序后,并不会自动创建rsync的主配置文件,需要手工来创建,其主配置文件为“/e ...

  9. rsync同步

    本地同步: rsync -avz /boot /test C/S架构: 远程同步:rsync+ssh 远程浏览器目录文件:rsync  用户@192.168.0.250:/boot 下行:rsync ...

随机推荐

  1. 【39】明智而审慎第使用private继承

    1.private继承意味着,根据某物实现出,继承父类的实现,关闭父类的接口,并不是Is-A的关系,不满足里氏代换,继承的内容访问权限都修改为private. 2.那么问题来了,复合也表达根据某物实现 ...

  2. Android手机监控软件设计实现

    一.需求分析: 随着IT信息技术的飞速发展,手机的普及,伴随着智能手机的出现及快速的更新换代,手机已不仅仅是一个通信工具,更是一个多功能的应用平台. 手机监控软件则是基于电脑监控软件的原理,植入手机平 ...

  3. 创建线程(Background Thread)的N种方式

    第一.Thread类 Thread类是实例化线程的主要方法:一个Thread实例管理一个线程,即执行序列.通过简单实例化一个对象,就可以创建一个线程,然后通过Thread对象提供的方法对线程进行管理. ...

  4. 有(无)符号char型及其溢出问题

    转载自:http://blog.sina.com.cn/s/blog_70ec9a6f01014j1h.html 1.char的有无符号类型 char 分为有符号性(signed)和无符号型(unsi ...

  5. C语言进行CGI程序设计

    一.CGI概述 CGI(公用网关接口)规定了Web服务器调用其他可执行程序(CGI程序)的接口协议标准.Web服务器通过调用CGI程序实现和Web浏览器的交互, 也就是CGI程序接受Web浏览器发送给 ...

  6. 从lambda到函数式编程

    Object.send(:remove_const,'TRUE') Object.send(:remove_const,'FALSE') def to_integer(pro) pro[-> n ...

  7. svn has stoped working

    各种问各种搜  ,看来还得靠自己,,,,下面是解决方案; 如果你出现这种情况,  右键点击svn的选项,就弹出这个框框,,,,点击svn里的哪个选项都是弹出这个框框,,,,重新安装,重启,换各种版本安 ...

  8. Swift枚举|结构体|类|属性|方法|下标脚本|继承

    1. 枚举: ->在Swift中依然适用整数来标示枚举值,需搭配case关键字 enum  Celebrity{  case DongXie,XiDu,Nandi,BeiGai }  // 从左 ...

  9. 用jquery-easyui中的combotree实现树形结构的选择

    用jquery-easyui中的combotree实现树形结构的选择 需求:实现一个树形节点的选择,要求默认父节点都折叠,父节点前的checkbox不显示,子节点显示checkbox,且父节点不可选择 ...

  10. VS2015+AngularJS+Ionic开发

    安装VS2015 Update2的过程是非常曲折的.还好经过不懈的努力,终于折腾成功了. 如果开发Cordova项目的话,推荐大家用一下ionic这个框架,效果还不错.对于Cordova.PhoneG ...