使用rsync+inotify同步两台服务器文件

本文介绍如何使用rsync配置服务器间文件同步。主要内容包括A服务器的rsyncd.conf及rsyncd.pas文件配置,B服务器文件同步指令,以及通过shell脚本实现自动化的文件同步流程。同时提供了常见错误解决链接。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目标功能:将B服务器文件同步到A服务器

A服务器rsyncd.conf配置 权限600

A服务器rsyncd.pas文件配置  权限600

同步文件路径 /data/wwwroot/shen/  权限755

打开873端口:iptables -I INPUT 4 -p tcp -m state --state NEW -m tcp --dport 873 -j ACCEPT

保存设置:service iptables save

重启:service iptables restart

启动服务 rsync --daemon --config=/etc/rsyncd.conf

删除文件即可重启rsync rm -rf /var/run/rsyncd.pid

kill cat /var/run/rsyncd.pid

 

B服务器

rsyncd.pas  权限600

将B服务器中/data/wwwroot/shen/内的所有文件同步到A服务器中

rsync -avH --progress --delete --password-file=/etc/rsyncd.pas /data/wwwroot/shen/ root@112.74.203.95::web

 

常见错误:http://www.jb51.net/article/31920.htm

 

查看是否支持inotify    ls -lsart /proc/sys/fs/inotify

下载 yum install inotify-tools --enablerepo=epel

检测是否成功安装 inotifywait -h

 

编写shell脚本

#etc/rc.d/inotify.sh

inotifywait -mrq --format '%Xe %w%f' -e modify,create,delete,attrib /data/wwwroot/shen/ | while read file
do
rsync -avH --progress --delete --password-file=/etc/rsyncd.pas /data/wwwroot/shen root@112.74.203.95::web
done

 

chmod +x /etc/rc.d/inotify.sh

执行脚本:/etc/rc.d/inotify.sh

 

转载于:https://www.cnblogs.com/mauricechans/p/6225737.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值