inotify和rsync实现实时同步

inotify和rsync实现实时同步,第1张

概述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 = 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 [email protected]服务器IP::backup

5.客户端创建inotify_rsync.sh脚本
vim inotify_rsync.sh br/>#!/bin/bash
SRC=‘/data/backup/‘
DEST=‘[email protected]服务器IP::backup‘
inotifywait -mrq --timefmt ‘%Y-%m-%d %H:%M‘ --format ‘%T %w %f‘ -e create,delete,moved_to,close_write ${SRC} |while read DATE TIME DIR FILE;
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服务器上.

总结

以上是内存溢出为你收集整理的inotify和rsync实现实时同步全部内容,希望文章能够帮你解决inotify和rsync实现实时同步所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/yw/1022804.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-23
下一篇 2022-05-23

发表评论

登录后才能评论

评论列表(0条)

保存