【Rsync + inotify】 实时同步远程服务器目录文件
生活随笔
收集整理的這篇文章主要介紹了
【Rsync + inotify】 实时同步远程服务器目录文件
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
文章目錄
- 服務端
- 安裝、配置 rsync
- 客戶端
- 安裝rsync
- 使用rsysnc
- 實現 實時同步
- 如何排錯???
服務端
安裝、配置 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 ## 啟動服務 # /etc/init.d/rsyncd start## 默認為 873 端口,配置防火墻 iptables -A INPUT -p tcp --dport 873 -j ACCEPT && iptables-saveubuntun: apt install rsync .....配置大致相同,不在贅述客戶端
安裝rsync
與服務端相同,客戶端不用配置,只需啟動服務(/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>@<服務端地址>::<服務端定義的模塊名> /usr/bin/rsync -vzrtopg --delete --progress --password-file=/etc/rsync.pwd /home/src/ backupuser@1.2.3.4::backup實現 實時同步
## 安裝 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## 前臺執行,并調試 bash inotify_rsync.sh再打開新窗口連接客戶端,在原目錄下創建文件a.test (touch /home/src/a.test) 查看客戶端日志,并去服務端目標目錄是否有新文件a.test如果沒有問題,那關閉前臺命令 ,先ps -ef |grep ino 查看進程號,再 kill -9 <進程號> 殺死進程## 后臺執行 nohup inotify_rsync.sh &如何排錯???
可以在服務端轉包,查看數據是否有新數據過來,示例: tcpdump -nn -i eth1 port 873
總結
以上是生活随笔為你收集整理的【Rsync + inotify】 实时同步远程服务器目录文件的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【Clickhouse】rsyslog服
- 下一篇: 【Vue】 Error with Vue