分享Windows伺服器網站檔案同步備份解決方案之cwRsyn進行檔案同步
本文和大家分享Windows伺服器網站檔案同步備份解決方案,來自部落格園dudu的文章。對於一個網站來說,使用者上傳檔案的同步備份是必需要解決的問題。對於有著巨量上傳檔案的大型網站,一般採用分散式儲存系統。而對於上傳檔案量不是很大的網站,只要在另外一臺伺服器上儲存上傳檔案的同步備份,避免單點故障,就可以滿足需求。如果採用分散式儲存系統,價效比不是很高,而cwRsyn就是一個不錯的選擇。
下面簡單介紹一下如何使用cwRsyn進行檔案同步。
cwRsync是Windows平臺的檔案同步解決方案,cwRsync打包了rsync和cygwin,rsync是Linux平臺的檔案同步軟體,cygwin是一個在Windows平臺上執行的Linux模擬環境。
1. cwRsync服務端安裝與配置
安裝過程中,會出現建立使用者的視窗,輸入使用者名稱與密碼後,安裝軟體會自動建立一個Windows帳戶。該帳戶用於執行RsyncServer的Windows服務(要注意該帳戶對要同步的資料夾是否具有許可權),當然你也可以用系統帳戶來執行服務。安裝完成後,在管理工具》服務中會出現RsyncServer服務。
2) 修改配置檔案rsyncd.conf,配置檔案如下:
use chroot = falsestrict modes = false
hosts allow = *
log file = rsyncd.log
uid = 0
gid = 0[test]
path
read only = false
transfer logging = yes
配置檔案說明:
a) uid = 0,gid = 0是針對匿名訪問的情況進行設定的,這樣客戶端同步時就不需要進行使用者驗證。如果不進行這樣的設定,客戶端同步時會出現“invalid uid nobody”或“invalid gid nobody”的錯誤提示。如果需要使用者驗證,就要進行另外的設定。
b) [test]相當於虛擬目錄,客戶端同步時,就是通過這個名字訪問伺服器上要同步的資料夾。
c) path = /cygdrive/f/test,同步資料夾的實際路徑,f/test=f:/test。
3) 進入管理工具》服務,啟動RsynServer服務。
注:cwRsyncServer預設埠是873,如果要指定埠,在rsyncd.conf中新增:port = 埠號。
2. 客戶端使用方法
2)通過命令列進行同步操作:
假設cwRsync伺服器的IP是192.168.0.58,使用預設埠873,要同步的虛擬目錄是test,客戶端進行同步的資料夾是h:/sync/test,則執行如下的命令進行同步:
rsync -av rsync://192.168.0.58:873/test /cygdrive/h/sync/test
注:如果伺服器端刪除檔案,客戶端同步時不會在客戶端刪除檔案,只同步增加和更新的檔案。
3) 建立同步批處理檔案並加入任務計劃。
為了讓客戶端同步操作自動進行,需要將同步命令放在批處理檔案中,並將該批處理檔案加入任務計劃。