Linux下inotify监控文件夹状态,发生变化后触发rsync同步


1、安装工具
--inotify
wget http://cloud.github.com/downloads/rvoicilas/inotify-tools/inotify-tools-3.14.tar.gz
tar -zxvf inotify-tools-3.14.tar.gz
cd inotify-tools-3.14
./configure --prefix=/usr/local/inotify
make && make install

--rsync
下载:http://rsync.samba.org/
tar -zxvf rsync-3.1.0.tar.gz
cd rsync-3.1.0
./configure --prefix=/usr/local/rsync
make && make install

 

2、编写运行脚本:
[root@192.168.1.1 script]$ vim monitor_dircharge.sh
#!/bin/sh
## -------------------------------------------------

## @监控目录状态,有变化后触发rsync同步
## -------------------------------------------------

srcdir="/data/www/New/html/www"
/usr/bin/inotifywait -mrq --timefmt '%d/%m/%y-%H:%M' --format '%T%w%f' -e modify,delete,create,attrib,move ${srcdir} \
| while read file
do
sudo rsync -rlptDvzHS --delete --port=9789 --password-file=/etc/rsyncd.password_client /data/www/New/html/www/ root@192.168.1.2::Server/New/html/www/
done

 

3、启动脚本
nohup sudo sh /data/script/monitor_dircharge.sh >> /tmp/inotify.log 2>&1 &

 

4、添加开机启动
echo 'nohup sudo sh /data/script/monitor_dircharge.sh >> /tmp/inotify.log 2>&1 &' >> /etc/rc.local

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM