Linux 文件夹备份 同步,Linux 自动监控文件目录变化并同步

本文介绍了如何通过inotifywait监控文件变化,并结合rsync实现实时文件同步到远程服务器。首先,详细说明了安装rsync和inotifywait的步骤,然后提供了一个示例脚本inotifywait.sh,该脚本在文件更新时触发rsync同步操作。此方法适用于自动化文件管理和部署场景。
摘要由CSDN通过智能技术生成

介绍

有时候我们常需要当文件变化的时候便触发某些脚本操作,比如说有文件更新了就同步文件到远程机器。在实现这个操作上,主要用到两个工具,一个是rsync,一个是inotifywait 。inotifywait的作用是监控文件夹变化,rsync是用来同步,可同步到本机的其他目录或者远程服务器上。

安装rsync

wget http://rsync.samba.org/ftp/rsync/src/rsync-3.1.1.tar.gz

tar zxvf rsync-3.1.1.tar.gz

./configure –prefix=/usr/local/rsync-3.1.1

make

make install

安装inotifywait

wget http://github.com/downloads/rvoicilas/inotify-tools/inotify-tools-3.14.tar.gz

tar zxvf inotify-tools-3.14.tar.gz

cd inotify-tools-3.14

./configure

make

make install

创建并运行脚本

新建脚本inotifywait.sh 并输入以下内容

#!/bin/bash

export CNROMS_SRC=/home/ftpuser/gri/ # 同步的路径,请根据实际情况修改

inotifywait --exclude '\.(part|swp)' -r -mq -e modify,move_self,create,delete,move,close_write $CNROMS_SRC |

while read event;

do

rsync -vazu --progress --password-file=/etc/rsyncd_rsync.secret /home/ftpuser/gri/sla rsync@10.208.1.1::gri ##这里执行同步的命令,可以改为其他的命令

done

然后执行下面命令,会在后台执行监控:

nohup sh inotifywait.sh > /dev/null 2>&1

然后就可以关闭命令行窗口了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值