inotify + rsync工具实时同步方案实战

#inotify 实施准备

大前提 rsync 服务器配置成功,能在客户端推拉数据才能配inotify。
uname -r   内核版本2.6.13 以上
[root@centos7 ~]# ls -l /proc/sys/fs/inotify/
总用量 0
-rw-r--r--. 1 root root 0 8月   4 07:13 max_queued_events
-rw-r--r--. 1 root root 0 8月   4 07:13 max_user_instances
-rw-r--r--. 1 root root 0 8月   4 07:13 max_user_watches

2.下载inotify 源码包

cd /tmp
wget http://github.com/downloads/rvoicilas/inotify-tools/inotify-tools-3.14.tar.gz --no-check-certificate
tar zxvf 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


[root@centos7 tmp]# cd /usr/local/inotify/
[root@centos7 inotify]# ll
总用量 0
drwxr-xr-x. 2 root root  45 8月   4 15:20 bin        #inotify执行命令(二进制)
drwxr-xr-x. 3 root root  26 8月   4 15:20 include    #inotify 程序所需的头文件
drwxr-xr-x. 2 root root 143 8月   4 15:20 lib        #动态连接库文件
drwxr-xr-x. 4 root root  28 8月   4 15:20 share      #帮助文档


├── bin
│   ├── inotifywait
│   └── inotifywatch

测试

/usr/local/inotify-tools-3.14/bin/inotifywait -mrq --timefmt '%d/%m/%y %H:%M' --format '%T %w%f' -e create,delete /backup
04/08/18 15;46 /backup/1.txt

/usr/local/inotify-tools-3.14/bin/inotifywait -mrq  --format ' %w%f' -e create /backup


#监控脚本1(精准同步)

#!/bin/sh

cmd="/usr/local/inotify-tools-3.14/bin/inotifywait"
$cmd  -mrq  --format ' %w%f' -e create,delete,close_write /backup|\


while true line
do
    [ ! -e "$line" ]
    rsync -az $line backup@192.168.1.99::test --password-file=/etc/rsync.password
done
#监控脚本2(同步整个目录)
#!/bin/sh


host01=192.168.1.99
src=/backup
dst=oldboy
user=rbackup
rsync_passfile=/etc/rsync.password
inotify_home=/usr/local/inotify-tools-3.14/


${inotify_home}/bin/inotifywait -mrq --timefmt '%d/%m/%y %H:%M' --format '%T %w%f' -e close_write,delete,create,attrib $src \
| while read file
do
        cd $src && rsync -aruz -R --delete ./ --timeout=100 $user@$host01::$dst --password-file=${rsync_passfile} > /dev/null 2>&1
done
exit 0


  • blogger
版权声明:若无特殊注明,本文为《橙子柠檬》原创,转载请保留文章出处。
本文链接:https://qinzc.me/post-81.html
正文到此结束

热门推荐

发表吐槽

你肿么看?

你还可以输入 250 / 250 个字

嘻嘻 大笑 可怜 吃惊 害羞 调皮 鄙视 示爱 大哭 开心 偷笑 嘘 奸笑 委屈 抱抱 愤怒 思考 日了狗 胜利 不高兴 阴险 乖 酷 滑稽

评论信息框
可使用QQ号实时获取昵称+头像

私密评论

吃奶的力气提交吐槽中...


既然没有吐槽,那就赶紧抢沙发吧!