【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)
相关推荐
筏.k15 分钟前
grep、wc 与管道符快速上手指南
linux
文牧之16 分钟前
PostgreSQL 的扩展pageinspect
运维·数据库·postgresql
Johny_Zhao20 分钟前
华为MAAS、阿里云PAI、亚马逊AWS SageMaker、微软Azure ML各大模型深度分析对比
linux·人工智能·ai·信息安全·云计算·系统运维
CodeOfCC29 分钟前
c语言 封装跨平台线程头文件
linux·c语言·windows
科文小白狼31 分钟前
Linux下VSCode开发环境配置(LSP)
linux·vscode·里氏替换原则·lsp
小兔子酱#41 分钟前
【Docker 01】Docker 简介
运维·docker·容器
jugt2 小时前
CentOS 7.9安装Nginx1.24.0时报 checking for LuaJIT 2.x ... not found
linux·运维·centos
多多*3 小时前
LUA+Reids实现库存秒杀预扣减 记录流水 以及自己的思考
linux·开发语言·redis·python·bootstrap·lua
何双新4 小时前
第21讲、Odoo 18 配置机制详解
linux·python·开源
21号 14 小时前
9.进程间通信
linux·运维·服务器