linux下通过rsync+inotify 实现数据实时备份(远程容灾备份系统)

2025-05-27 0 77

配置过程记录下来,防止遗忘!如有建议技术支持qq群139785720 配置架构如下:

linux下通过rsync+inotify 实现数据实时备份(远程容灾备份系统)

一.安装步骤(服务器端192.168.0.5)

1) 安装rsync 点击下载rsync-3.0.9.tar.gz
下载文件放到该目录下/usr/src
#cd /usr/src
#tar -zxvf rsync-3.0.9.tar.gz //解压文件
#cd rsync-3.0.9 //进入该文件目录
#./configure //主要的作用是对即将安装的软件进行配置,检查当前的环境是否满足要安装软件的依赖关系
#make //编译
#make install //安装

2)安装inotify 点击下载inotify-tools-3.14.tar.gz
下载文件放到该目录下/usr/src
#cd /usr/src
#tar -zxvf inotify-tools-3.14.tar.gz //解压文件
#cd inotify-tools-3.14 //进入该文件目录
#./configure //主要的作用是对即将安装的软件进行配置,检查当前的环境是否满足要安装软件的依赖关系
#make //编译
#make install //安装

3)服务端编写文件夹监视脚本
#vi /srv/rsync.sh
rsync.sh内容如下:
#!/bin/bash
src=/srv/test/ #监视改文件路径,文件夹内容发生改变触发服务器数据同步
des=backup #客服端配置的模块(客服端会介绍)
host="192.168.10.6" #同步到的ip地址,如有多个用空格隔开。例如:host="192.168.10.6 192.168.10.7"
/usr/local/bin/inotifywait -mrq –timefmt '%d/%m/%y %h:%m' –format '%t %w%f' -e modify,delete,create,attrib $src | while read files #这边要主要下inotifywait,只有linux 2.6.13 或更高版的才会兼容
do
for hostip in $host
do
#rsync -vzrtopg –delete –progress rsync@$hostip::$des $src –password-file=/etc/rsync.pas 该命令是客服端跟新后同步到服务器端
rsync -vzrtopg –delete –progress –password-file=/etc/rsync.pas $src rsync@$hostip::$des #改命令是服务器端跟新后同步到客服端(看具体使用情况选择)
#–password-file=/etc/rsync.pas 配置到客服端,也就是客户端路径下有rsync.pas 用于配置登陆密码
#rsync 是客户端配置的登陆名
done
echo "${files} was rsynced" >>/tmp/rsync.log 2>&1 #生成日志文件
done

4)启动nohup
#nohup /bin/bash /srv/rsync.sh & //后台不挂断地运行命令
#echo "nohup /bin/bash /root/bin/rsync.sh &" >> /etc/rc.local //设置linux服务器启动自动启动nohup

rsync + inofity服务端就配置好了,接下来我们来配置客服端

二.安装步骤(客服端)

1) 安装rsync 步骤如上!
2)配置rsyncd.conf
#vi /etc/rsyncd.conf //打开rsyncd.conf
rsyncd.conf内容如下:
uid = root
gid = root
port = 873 #post rsync使用的端口号 也是默认端口号
hosts allow = 192.168.10.5 #allow hosts ip 应许的ip访问,也可以设置为ip段
max connections =
timeout=

##config file
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsync.lock
log file = /var/log/rsyncd.log
#motd file = /etc/rsyncd.motd

##global config
[backup]
path =/srv/test #客服端已rsync服务端同步的文件路径
comment = from 192.168.10.5 #解释
read only = no
list = no
##client sync config
auth users =rsync #配置登陆名称
secrets file = /etc/rsync.passwd #配置用户名密码文件

3)配置rsync.passwd
#vi /etc/rsync.passwd
rsync.passwd内容如下:
rsync:cyc #rsync登陆用户名 cyc是登陆密码
#chomd 600 rsync.passwd #需要注意rsync.passwd的权限配置
客服端配置完成!

三.如果再配置过程中出现如下问题,分析出错原因。

问题一:
@error: chroot failed
rsync error: error starting client-server protocol (code 5) at main.c(1522) [receiver=3.0.3]

原因:
服务器端的目录不存在或无权限,创建目录并修正权限可解决问题。

问题二:
@error: auth failed on module backup
rsync error: error starting client-server protocol (code 5) at main.c(1522) [receiver=3.0.3]

原因:
服务器端该模块(backup)需要验证用户名密码,但客户端没有提供正确的用户名密码,认证失败。
提供正确的用户名密码解决此问题。

问题三:
@error: unknown module ‘backup'
rsync error: error starting client-server protocol (code 5) at main.c(1522) [receiver=3.0.3]

原因:
服务器不存在指定模块。提供正确的模块名或在服务器端修改成你要的模块以解决问题。

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

快网idc优惠网 行业资讯 linux下通过rsync+inotify 实现数据实时备份(远程容灾备份系统) https://www.kuaiidc.com/63271.html

相关文章

发表评论
暂无评论