inotify和rsync实现实时同步-创新互联
1.搭建rsync服务端
systemctl start rsyncd
systemctl enable rsyncd
systemctl status rsyncd
ss -ntl |grep 873
rpm -ql rsync
2.修改配置文件
vi /etc/rsyncd.conf
uid = root
gid = root
use chroot = no
max connections = 0
ignore errors
exclude = lost+found/
log file = /var/log/rsyncd.log
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsyncd.lock
reverse lookup = no
hosts allow = 192.168.8.0/24 #客户端IP
[backup]
path = /backup/
comment = backup
read only = no
auth users = rsyncuser
secrets file = /etc/rsync.pass
3.创建rsync备份服务器目录
mkdir /backup
服务器端生成验证文件
echo "rsyncuser:magedu" > /etc/rsync.pass
chmod 600 /etc/rsync.pass
服务器端准备目录
mkdir /backup
服务器端启动rsync服务
rsync --daemon 可加入/etc/rc.d/rc.local实现开机启动
systemctl start rsyncd CentOS 7
客户端配置密码文件
echo "magedu" > /etc/rsync.pass
chmod 600 /etc/rsync.pass
客户端
开启inotify
yum -y install inotify-tools
4.客户端测试同步数据
rsync -avz --password-file=/etc/rsync.pass /data/backup rsyncuser@rsync服务器IP::backup
5.客户端创建inotify_rsync.sh脚本
vim inotify_rsync.sh #!/bin/bash
SRC='/data/backup/'
DEST='rsyncuser@rsync服务器IP::backup'
br/>#!/bin/bash
SRC='/data/backup/'
DEST='rsyncuser@rsync服务器IP::backup'
do
FILEPATH=${DIR}${FILE}
rsync -az --delete --password-file=/etc/rsync.pass $SRC $DEST &&
echo "At ${TIME} on ${DATE}, file $FILEPATH was backuped up via rsync"
/var/log/changelist.log
done
chmod +x inotify_rsync.sh
开启后台监控进程
6.sh inotify_rsync.sh &
ps -ef |grep inotify_rsync
注意:两台主机必须开启ssh免密登录,允许客户端把数据被分到rsync服务器上.
另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
文章题目:inotify和rsync实现实时同步-创新互联
分享链接:http://azwzsj.com/article/diphsg.html