rsync+inotify实现远程同步
发表于:2025-12-03 作者:千家信息网编辑
千家信息网最后更新 2025年12月03日,rsync介绍rsync,英文全称是remote synchronize,是一款实现远程同步功能的免费软件,它在同步文件的同时,可以保持原来文件的权限、时间、软硬链接等附加信息。 rsync提供了一个
千家信息网最后更新 2025年12月03日rsync+inotify实现远程同步
rsync介绍
rsync,英文全称是remote synchronize,是一款实现远程同步功能的免费软件,它在同步文件的同时,可以保持原来文件的权限、时间、软硬链接等附加信息。 rsync提供了一个客户机和远程文件服务器的文件同步的快速方法,而且可以通过ssh方式来传输文件。甚至还可以实现只同步一个文件里有变化的内容部分,所以可以实现快速的同步备份数据。同时,rsync还可以实现同步本地数据、删除文件和目录的功能。
- inotify介绍
Inotify 是一个 Linux 内核特性,它监控文件系统,并且及时向专门的应用程序发出相关的事件警告,比如删除、读、写和卸载操作等。您还可以跟踪活动的源头和目标等细节。
- rsync+notify实现自动同步
如果要实现定时同步数据,可以在客户端将rsync加入定时任务,但是定时任务的同步时间粒度并不能达到实时同步的要求。在Linux kernel 2.6.13后提供了inotify文件系统监控机制。通过rsync+inotify组合可以实现实时同步。
- 实验要求:
源服务器:192.168.177.132(rsync,httpd)
发起端:192.168.177.132(rsync,httpd,inotify-tools)
源服务器
# rpm -q rsync //查看rsync有没有安装# vim /etc/rsyncd.conf //rsync的配置文件 uid = nobody gid = nobody use chroot = yes address = 192.168.177.132 port 873 log file = /var/log/rsyncd.log pid file = /var/run/rsyncd.pid hosts allow = 192.168.177.0/24 [wwwroot] path = /var/www/html comment = www.kgc.cn read only = yes dont compress = *.gz *.tgz *.zip *.z *.Z *.rpm *.deb *.bz2 auth users = backuper secrets file = /etc/rsyncd_users.db# vim /etc/rsyncd_users.db backuper:abc123 //账号跟密码的格式# chmod 600 /etc/rsyncd_users.db# yum install httpd -y //安装web服务# rsync --daemon //启动rsync服务# systemctl stop firewalld.service //关闭防火墙# setenforce 0 //增强性安全功能# chmod 777 /var/www/html/# cd /var/www/html# echo "this is test" > 123.txt

发起端
# systemctl stop firewalld.service# setenforce 0 //必须先关闭防火墙交互,输入的是源服务器的地址# rsync -avz backuper@192.168.177.132::wwwroot /opt/ 免交互,无需输入密码# vim /etc/server.pass# chmod 600 /etc/server.pass# rsync -az --delete --password-file=/etc/server.pass backuper@192.168.177.132::wwwroot /optrsync+inotify自动同步
inotify装在发起端
rsync在源服务器上
源服务器:# vim /etc/rsyncd.conf read only = no# pkill -9 rsync# cd /var/run/# rm -rf rsyncd.pid //删除pid进程# rsync --daemon //重启服务发起端:# chmod 777 /var/www/html/# tar zxvf inotify-tools-3.14.tar.gz -C /opt //解压# cd inotify-tools-3.14/ ./configure# yum install gcc gcc-c++ -y //安装编译环境# make && make install# vim /etc/sysctl.conf //进行优化fs.inotify.max_queued_events = 16384fs.inotify.max_user_instances = 1024fs.inotify.max_user_watches = 1048576# sysctl -p //立即生效# inotifywait -mrq -e modify,create,move,delete /var/www/html/ //对站点进行监控# vim /opt/inotify.sh //编写能同步的脚本#!/bin/bashINOTIFY_CMD="inotifywait -mrq -e modify,create,attrib,move,delete /var/www/html/"RSYNC_CMD="rsync -azH --delete --password-file=/etc/server.pass /var/www/html/ backuper@192.168.177.132::wwwroot/"$INOTIFY_CMD | while read DIRECTORY EVENT FILEdo if [ $(pgrep rsync | wc -l) -le 0 ] ; then $RSYNC_CMD fidone# chmod +x inotify.sh# ./inotify.sh
同步
文件
服务
服务器
功能
数据
监控
任务
同时
实时
客户
密码
时间
系统
防火墙
输入
防火
事件
免费软件
全称
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
数据库是否正常
中职计算机网络技术好就业吗
虚拟服务器与虚拟系统的区别
岳阳口碑好的软件开发哪家便宜
大学生开学网络安全问题
北京运营软件开发介绍
数据库学习的过程
网络安全宣传周微课感想
数据库是如何备份的
软件开发计划和项目施工方案
为什么会出现微信服务器向公众号推送消息
asp数据库打开工具
我们面对互联网和科技的做法
如何实现三台服务器网络互通
服务器ups不间断电源定做商家
围绕网络安全写一份发言稿提纲
计算机导论网络安全作文
学习网络安全推荐书籍
数据库技术在物流中的应用过程
数据库报告3000字
绍兴棋牌软件开发
静安区创新软件开发品质保障
网络技术综合题大小写
sql数据库证书是什么机构
网络安全宣传周素材
科唯网络技术有限公司
fifaol4数据库btb
图片存在数据库
卡西欧9860软件开发包
通讯网络技术学院