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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

利用unison+inotify 实现数据双向实时同步

發布時間:2025/3/15 编程问答 47 豆豆
生活随笔 收集整理的這篇文章主要介紹了 利用unison+inotify 实现数据双向实时同步 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.


利用unison+inotify 實現數據雙向實時同步


環境:Centos 6.5 64位

? ?server1 :192.168.1.201

? ?server2 :192.168.1.250

需求軟件:ocaml unison inotify-tools

我這里全是使用yum安裝的,若是喜歡使用源碼編譯安裝的可以官網下載源碼包。

? ?yum install ocaml unison inotify?


第一步:保證兩臺服務器之間可以通過ssh無密碼訪問,為了安全,需要創建一個普通用戶:

兩邊執行的步驟一樣:

? ? useradd unison

? ? passwd unison

? ? su - unison

? ? ssh-keygen -t rsa (直接三次回車即可)

? ? scp .ssh/id_rsa.pub 192.168.1.250:/home/unison/.ssh/authrized_keys

? ? scp .ssh/id_rsa.pub 192.168.1.201:/home/unison/.ssh/authrized_keys?

? ? chmod 600 .ssh


第二步:創建shell腳本來執行同步

?在server1 上

? vim /home/unison/inotify.sh

#!?/bin/bash ip2="192.168.1.250" src2="/home/unison/test" dst2="/home/unison/test" /usr/bin/inotifywait?-mrq?-e?create,delete,modify,move?$src2?|?while?read?line;?do /usr/bin/unison?-batch?$src2?ssh://$ip2//$dst2 echo?-n?"$line"?>>?/home/unison/inotify.log echo?`date|?cut?-d?'?'?-f1-4`?>>?/home/unison/inotify.log done

在server2 上創建腳本:

#!?/bin/bash ip1="192.168.1.201" src1="/home/unison/test" dst1="/home/unison/test" /usr/bin/inotifywait?-mrq?-e?create,delete,modify,move?$src1?|?while?read?line;?do /usr/bin/unison?-batch?$src1?ssh://$ip1//$dst1 echo?-n?"$line"?>>?/home/unison/inotify.log echo?`date|?cut?-d?'?'?-f1-4`?>>?/home/unison/inotify.log done

? ? ? ??

最后分別在兩臺服務器上執行腳本即可:

? nohup sh /home/unison/inotify.sh ? //加nohup,即可退出當前用戶,也可以繼續執行此腳本

若想開機啟動,可以加入到/etc/rc.d/rc.local中。

轉載于:https://blog.51cto.com/cuixiang/1678737

總結

以上是生活随笔為你收集整理的利用unison+inotify 实现数据双向实时同步的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。