rsync+inotify实现远程同步
发表于:2025-02-03 作者:千家信息网编辑
千家信息网最后更新 2025年02月03日,rsync介绍rsync,英文全称是remote synchronize,是一款实现远程同步功能的免费软件,它在同步文件的同时,可以保持原来文件的权限、时间、软硬链接等附加信息。 rsync提供了一个
千家信息网最后更新 2025年02月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 /opt
rsync+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安全错误
数据库的锁怎样保障安全
网络安全与秘钥不匹配
怎么实现网站与服务器的长链接
快火互联网科技有限公司
大专网络技术是什么意思
千锋网络安全ppt
视频服务器的作用
未来不再有软件开发
白银网络安全工程师方向
郑州小管家网络技术有限公司
数据库分表后查询分页
steam 游戏服务器
计算机数据库安全性
概括当前维护网络安全的措施
ts 软件开发简称
大兴品牌服务器回收报价单
东莞弓叶互联网科技
计算机与网络技术基础考试
网络安全典型工作任务
数据库列名规范
意外关闭服务器报错log怎么查
西安软件开发工作室
网络安全好看手抄报图片
cad数据库表格数据
服装类管理软件开发
有关网络安全教育的作文
徐州构建智慧校园软件开发
本地新建finedb数据库
安徽一七网络技术有限公司
信息网络和网络安全自查
软件开发公司上市评估报告