码迷,mamicode.com
首页 > 其他好文 > 详细

inotify+rsync安装配置

时间:2018-05-31 22:07:48      阅读:195      评论:0      收藏:0      [点我收藏+]

标签:usr   sdn   ack   logging   pid   认证   test   config   pat   

环境 系统 IP地址
主服务器 CentOS7.4 192.168.1.1
备份服务器 CentOS7.4 192.168.1.2

 

 

一、备份服务器

安装rsync(备)

wget https://rsync.samba.org/ftp/rsync/src/rsync-3.1.3.tar.gz
tar -xf rsync-3.1.3.tar.gz
./configure --prefix=/usr/local/rsync 
make && make install 

 配置rsyncd.conf

cat <<EOF> /etc/rsyncd.conf 
pid file = /var/run/rsync.pid  
log file = /var/log/rsync.log 
lock file=/var/run/rsync.lock  
secrets file = /etc/rsync.pw  
motd file = /etc/rsyncd.motd  
transfer logging = yes  
log format = %t %a %m %f %b  
syslog facility = local3  
[data]  
path = /data/test/
comment = data
exclude = 
port = 873
uid = root
gid = root
timeout = 600
max connections = 200
use chroot = no
read only = no
list = no
hosts allow = 192.168.1.1
EOF

 可以设置多个目录

#增加test1目录  
[test1]  
path = /data/test1  
list = yes  
ignore errors  
comment = ucweb-file system  
secrets file = /etc/rsync.pw  
exclude = blank.png ; spinner.gif ; downsimple.png ; rails.png ; WEB-INF/  

建立密码认证文件

cat <<EOF> /etc/rsync.pw  
root:123456  
EOF

配置rsyncd.motd文件,开始传送的时候会显示

cat <<EOF> /etc/rsyncd.motd  
###############################  
#                             #  
#        start rsync          #  
#                             #  
###############################  
EOF

启动rsync

/usr/local/rsync/bin/rsync --daemon --config=/etc/rsyncd.conf  

开机启动rsync

echo ‘/usr/local/rsync/bin/rsync --daemon --config=/etc/rsyncd.conf‘>>/etc/rc.d/rc.localer 

二、主服务器

建立密码认证文件

cat <<EOF> /etc/rsync.pw  
123456
EOF

测试开始

/usr/local/rsync/bin/rsync -avH --port=873 --progress --delete /data/test/ root@192.168.1.3::data --password-file=/etc/rsync.pw

查看192.168.1.2上是否有同步

安装inotify-tools

yum install inotify-tools -y

新建inotify.sh文件同步

#!/bin/sh  
# get the current path  
CURPATH=`pwd`  
/usr/bin/inotifywait -mr --timefmt ‘%d/%m/%y %H:%M‘ --format ‘%T %w %f‘ -e close_write /data | while read date time dir file; do  
       FILECHANGE=${dir}${file}  
       # convert absolute path to relative  
       FILECHANGEREL=`echo "$FILECHANGE" | sed ‘s_‘$CURPATH‘/__‘`  

       /usr/bin/rsync -avH --port=873 --progress --delete /data/test/ root@192.168.1.2::data --password-file=/etc/rsync.pw 
       echo "At ${time} on ${date}, file $FILECHANGE was backed up via rsync"  
done  


注意: 

如果仅仅是备份的话,不要带delete参数

参考链接

https://blog.csdn.net/liuzheng0915/article/details/52003942

 

inotify+rsync安装配置

标签:usr   sdn   ack   logging   pid   认证   test   config   pat   

原文地址:https://www.cnblogs.com/luchuangao/p/9118937.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!