【Linux】sersync 实时同步

原理

rsync 是不支持实时同步的,通常我们借助于 inotify 这个软件来实时监控 文件变化,一旦inotify 监控到文件变化 ,则立即调用 rsync 进行同步,推送到 rsync 服务端。

环境准备

步骤1:获取数据包

获取 sersync 的包安装到存储服务器-nfs01 上,这里我是用博客园-刘应杰的提供的链接 wget 获取的包进行测试。

sersync下载安装及配置(有演示示例) - 刘应杰 - 博客园 (cnblogs.com)

bash 复制代码
wget http://down.whsir.com/downloads/sersync2.5.4_64bit_binary_stable_final.tar.gz
bash 复制代码
目录规划:
 /app/tools/sersync/
 /app/tools/sersync/bin/
 /app/tools/sersync/conf/
修改之前:
 GNU-Linux-x86/
 GNU-Linux-x86/sersync2
 GNU-Linux-x86/confxml.xml
修改完成后样子:
 [root@nfs01 /app/tools/sersync]# tree 
.
 ├── bin
 │   └── sersync
 └── conf
    └── confxml.xml

步骤2:创建目录

bash 复制代码
mkdir -p /app/tools/sersync/{bin,conf}

步骤3:迁移配置目录

bash 复制代码
mv GNU-Linux-x86/sersync2 /app/tools/sersync/bin/
bash 复制代码
mv GNU-Linux-x86/confxml.xml /app/tools/sersync/conf/

步骤4:查看结果

bash 复制代码
tree -F /app/tools/

完整演示

实验设备

  • 存储服务器:172.16.1.31
  • web服务器:172.16.1.7
  • 备份服务器:172.16.1.41

操作流程

步骤1:备份服务器:修改的rsyncd配置文件,添加准备实时同步的共享目录

bash 复制代码
vim /etc/rsyncd.conf

在配置文件中添加如下信息

bash 复制代码
[nfsbackup]
comment = realtime
path=/nfsbackup

步骤2:备份服务器:创建共享目录修改权限

bash 复制代码
mkdir -p /nfsbackup
bash 复制代码
chown -R rsync.rsync /nfsbackup/

步骤3:备份服务器:重启 rsync

bash 复制代码
systemctl restart rsyncd

步骤3:存储服务器:修改 sersync 的 confxml.xml 配置文件

具体修改如下:左修改后,有原文件

步骤4:存储服务器:创建软连接

bash 复制代码
ln -s /app/tools//sersync/bin/sersync2 /bin/

步骤5:存储服务器:启动或者关闭服务

启动

bash 复制代码
sersync2 -rdo  /app/tools/sersync/conf/confxml.xml

关闭两种选择

bash 复制代码
# 第一种
pkill sersync2

# 第二种
kill 进程id

步骤6:存储服务器:配置文件 /etc/exports

bash 复制代码
vim /etc/exports

添加配置

bash 复制代码
/data/ 172.16.1.0/24(rw)
相关推荐
何以不说话16 分钟前
堡垒机jumpserver
运维·sql
开开心心就好16 分钟前
开源免费高速看图工具,支持漫画大图秒开
linux·运维·服务器·安全·ruby·symfony·1024程序员节
D11_16 分钟前
[特殊字符]️ 5379工具箱 - 全部网站链接汇总
服务器·百度·阿里云·typescript·编辑器
花间相见17 分钟前
【AI开发】—— Ubuntu系统使用nvm管理Node.js多版本,版本切换一键搞定(实操完整版)
linux·ubuntu·node.js
PPPPPaPeR.24 分钟前
从零实现一个简易 Shell:理解 Linux 进程与命令执行
linux·开发语言·c++
Byte不洛1 小时前
Linux 多线程:生产者消费者模型、阻塞队列与条件变量详解
linux·多线程·并发编程·pthread·生产者消费者模型
小Pawn爷1 小时前
13.virtualbox安装ubuntu
linux·运维·ubuntu
乾元1 小时前
暗网情报:自动化采集与情感分析在威胁狩猎中的应用
运维·网络·人工智能·深度学习·安全·架构·自动化
VekiSon1 小时前
Linux内核驱动——Ubuntu 网络启动环境配置与操作
linux·arm开发·嵌入式硬件·ubuntu
YYYing.1 小时前
【Linux/C++进阶篇(二) 】超详解自动化构建 —— 日常开发中的“脚本” :Makefile/CMake
linux·c++·经验分享·ubuntu