CentOS 6.5 Rsync+Inotify实时同步

服务端:backup_server    192.168.174.10

客户端:lamp                  192.168.174.20

一、服务端部署

①生成配置文件

vim /etc/rsyncd.conf

#Rsync server
#created by yupan 15:01 2016-02-23
##rsyncd.conf start##
uid = root
gid = root
use chroot = no
max connections = 2000
timeout = 600
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsync.lock
log file = /var/log/rsyncd.log
ignore errors
read only = false
list = false
hosts allow = 192.168.174.0/24
hosts deny = 0.0.0.0/32
auth users = rsync_backup
secrets file = /etc/rsync.password
#####################################
[www]
comment = www by yupan 14:18 2016-02-23
path = /data0/www/www/
#####################################
[bbs]
comment = bbs by yupan 14:18 2016-02-23
path = /data0/www/bbs/
#####################################
[blog]
comment = blog by yupan 14:18 2016-02-23
path = /data0/www/blog/
#####################################
[backup]
comment = blog by yupan 14:18 2016-02-23
path = /backup/
#####################################
[nfs]
comment = blog by yupan 14:18 2016-02-23
path = /backup/nfs/

②密码及权限设置

echo "rsync_backup:panda" > /etc/rsync.password

chmod 600 /etc/rsync.password

③启动Rsync

启动(daemon模式)

rsync --daemon

加入开机自启动

echo "/usr/bin/rsync --daemon" >> /etc/rc.local

检查开机启动

cat /etc/rc.local

检查Rsync进程(二选一)

ps -ef|grep rsync
netstat -lntup|grep rsync

重启服务

killall rsync
rsync --daemon

④创建共享目录

mkdir -p /data0/www/{bbs,www,blog}

二、客户端配置

①生成密码文件

echo "panda" > /etc/rsync.password
chmod 600 /etc/rsync.password 

②测试同步功能

rsync -avz a.txt rsync_backup@192.168.174.10::www/ --password-file=/etc/rsync.password

③服务端验证

服务端防火墙需rsync通行

 ④Inotify配置

创建tools、scripts文件夹集中管理软件包及脚本文件,编译安装Inotify-3.14

mkdir  -p /home/tools
mkdir -p /home/scripts
cd /home/tools/
tar xf inotify-tools-3.14.tar.gz 
cd inotify-tools-3.14
./configure --prefix=/usr/local/inotify-tools-3.14
make && make install
ln -s /usr/local/inotify-tools-3.14/ /usr/local/inotify

 

Inotify简易脚本调试,后台运行

vim /home/scripts/inotify.sh

 

#!/bin/sh
dir="/usr/local/inotify-tools-3.14/bin/inotifywait"
$dir -mrq --timefmt '%d/%m/%y %H:%M' --format '%w%f' -e delete,create,close_write /backup|while read line
do
   cd /
   rsync -az --delete /backup/ rsync_backup@192.168.174.10::nfs --password-file=/etc/rsync.password
done

 

sh /home/scripts/inotify.sh &

 

⑤测试同步效果

服务端:

客户端:

客户端开始生成文件:

touch {a..z}

查看服务端文件夹:

 

三、Rsync+Inotify优缺点

1,rsync是单向传输。
2,可以互为服务端及客户端
3,同步时不会陷入循环
4,并发较小,不能适用大型集群

优化版本:

真正的inotify+rsync实时同步 彻底告别同步慢

转载于:https://www.cnblogs.com/Panda-python/p/6857639.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值