日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【Rsync + inotify】 实时同步远程服务器目录文件

發(fā)布時間:2025/3/20 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【Rsync + inotify】 实时同步远程服务器目录文件 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

文章目錄

  • 服務(wù)端
    • 安裝、配置 rsync
  • 客戶端
    • 安裝rsync
    • 使用rsysnc
    • 實現(xiàn) 實時同步
  • 如何排錯???

服務(wù)端

安裝、配置 rsync

centos: # yum install rsync -y # vim /etc/rsyncd.conf uid = nobody gid = nobody use chroot = yes max connections = 10 strict mode=yes pid file = /var/run/rsyncd.pid lock file=/var/run/rsync.lock log file=/var/log/rsyncd.log [backup] # 自定義模塊名稱path = /home/dstdir/ # 目標目錄comment = test # 描述信息ignore errrorsread only=nowrite only=nohosts allow=1.1.1.0/24hosts deny=*list=falseuid=rootgid=rootauth users=backupuser # 自定義名稱secrets file=/etc/rsyncd.pwd## 用戶名:密碼,要求用戶名backupuser 與 /etc/rsyncd.conf 的auth users 一致 # echo "backupuser:123456" > /etc/rsyncd.pwd ## 啟動服務(wù) # /etc/init.d/rsyncd start## 默認為 873 端口,配置防火墻 iptables -A INPUT -p tcp --dport 873 -j ACCEPT && iptables-saveubuntun: apt install rsync .....配置大致相同,不在贅述

客戶端

安裝rsync

與服務(wù)端相同,客戶端不用配置,只需啟動服務(wù)(/etc/init.d/rsyncd start或systemctl start rsyncd),并使用即可

使用rsysnc

## 只需要寫入backupuser 的密碼即可 # echo "123456" > /etc/rsync.pwd # chmod 600 /etc/rsync.pwd## /usr/bin/rsync -vzrtopg --delete --progress --password-file=<密碼文件> <源目錄> <auth users>@<服務(wù)端地址>::<服務(wù)端定義的模塊名> /usr/bin/rsync -vzrtopg --delete --progress --password-file=/etc/rsync.pwd /home/src/ backupuser@1.2.3.4::backup

實現(xiàn) 實時同步

## 安裝 inotify yum install inotify-tools## 寫腳本 inotify_rsync.sh /usr/bin/inotifywait -mrq --timefmt '%d/%m/%y %H:%M' --format '%T %w%f%e' -e close_write,delete,create,attrib $src | while read files do/usr/bin/rsync -vzrtopg --delete --progress --password-file=/etc/rsync.pwd /home/src/ backupuser@1.2.3.4::backup > /dev/null 2>&1echo "${files} was rsynced." >> /tmp/rsync.log 2>&1 donechmod +x inotify_rsync.sh## 前臺執(zhí)行,并調(diào)試 bash inotify_rsync.sh再打開新窗口連接客戶端,在原目錄下創(chuàng)建文件a.test (touch /home/src/a.test) 查看客戶端日志,并去服務(wù)端目標目錄是否有新文件a.test如果沒有問題,那關(guān)閉前臺命令 ,先ps -ef |grep ino 查看進程號,再 kill -9 <進程號> 殺死進程## 后臺執(zhí)行 nohup inotify_rsync.sh &

如何排錯???

可以在服務(wù)端轉(zhuǎn)包,查看數(shù)據(jù)是否有新數(shù)據(jù)過來,示例: tcpdump -nn -i eth1 port 873

總結(jié)

以上是生活随笔為你收集整理的【Rsync + inotify】 实时同步远程服务器目录文件的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。