之前有透露过,杜老师的去不图床使用三点备份,除本地备份外,还有内网存储备份,以及云上备份。而内网存储备份是通过 rsync 实现的,同步周期为每半个小时。近期打算配合 inotifywait 实现文件的实时同步!
工具介绍
rsync 是一个用于文件同步和备份的工具,inotifywait 是一种文件系统事件通知机制。
通过结合用 rsync 和 inotifywait,可实现文件的实时同步。
工具安装
安装 rsync 软件包:
1 | sudo apt -y install rsync |
安装 inotify-tools 软件包:
1 | sudo apt -y install inotify-tools |
服务配置
在源服务器上,创建一个 rsync 的配置文件,如/etc/rsyncd.conf,指定要同步的文件或目录及其它相关设置。
安装并配置 inotifywait,确保 inotifywait 模块已加载。使用 inotifywait 命令监视源目录事件。
编写同步脚本,使用 inotifywait 输出触发 rsync 命令,将更改的文件同步到目标服务器。
设置定时任务或者守护进程,使用 cron 或其它合适的工具定期执行同步脚本以实现实时同步。
示例脚本
1 | #!/bin/bash |
注意:这只是一个简要的概述,实际实现可能会因具体需求和环境而有所不同。在这个示例中,inotifywait 命令监视源目录修改、创建、删除、移动事件。当事件发生时,rsync 命令会执行,将源目录中的更改同步到目标目录中。