18 目录文件变化监控与实时文件同步

复制代码
#!/bin/bash
source /etc/profile

DATE="$(date +'%F')"
HOST_IP="172.16.1.122"
SOURCE_DIR="/opt"
# 注意:目录最后面的左斜杠(/)
# /opt  : 同步时会将整个源目录也同步到备份目录之中
# /opt/ : 同步时只同步源目录中的所有文件
SOURCE_DIR_NAME="opt"
AIMS_DIR="/tmp/backup_dir"
[ ! -d $AIMS_DIR ] && mkdir -p $AIMS_DIR

inotifywait -mrq --timefmt '%Y/%m/%d %H:%M:%S' --format '%T %w %f %e' -e modify,delete,create,attrib $SOURCE_DIR |\
while read files; do
    # sleep 30
    # 同步时间延迟
    if ! rsync $SOURCE_DIR --delete -az $AIMS_DIR 2>>${AIMS_DIR}/${SOURCE_DIR_NAME}_dir_${DATE}.error; then
        echo "Server $HOST_IP ${SOURCE_DIR} DIR $files RSYNC FAILD" |mail -s "Server $HOST_IP ${SOURCE_DIR} DIR RSYNC FAILD" 2504164765@qq.com
    fi
done


# 依赖包
# yum install inotify-tools -y
复制代码

 

复制代码
#!/bin/bash
source /etc/profile

HOST_IP="172.16.1.122"
MON_DIR="/opt"

inotifywait -mrq --timefmt '%Y/%m/%d %H:%M:%S' --format '%T %f' -e create $MON_DIR |\
while read files; do
    echo "Server $HOST_IP AT ${MON_DIR} DIR CREATE ${files}" |mail -s "Server $HOST_IP $MON_DIR DIR MONITOR" 2504164765@qq.com
done


# 依赖包
# yum install inotify-tools -y
复制代码

 

复制代码
#!/bin/bash
source /etc/profile

SOURCE_DIR="/opt/"
AIMS_DIR="/tmp/backup_dir"
[ ! -d $AIMS_DIR ] && mkdir -p $AIMS_DIR

inotifywait -mrq --format '%w%f' -e modify,create $SOURCE_DIR |\
while read files; do
    if [ -f "$files" ];then
        rsync -az $files $AIMS_DIR &>/dev/null &
    fi
done

# 依赖包
# yum install inotify-tools -y
复制代码

 

posted @   云起时。  阅读(166)  评论(0编辑  收藏  举报
(评论功能已被禁用)
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· 葡萄城 AI 搜索升级:DeepSeek 加持,客户体验更智能
· 什么是nginx的强缓存和协商缓存
· 一文读懂知识蒸馏
历史上的今天:
2020-04-24 29、Tomcat只允许指定域名访问,禁用IP地址访问,防止恶意解析
点击右上角即可分享
微信分享提示
主题色彩