Windows下利用cwRsync批量同步檔案(4.1.0版本)
前段時間寫了一篇linux下利用rsync批量更新的文章,網遊公司windows伺服器還是很多的,今天就來講講windows下批量更新的方法,windows下同步資料利用cwRsync來完成的
一、系統環境
windows 2003 R2 sp2
更新源伺服器:10.8.5.240
目的伺服器:10.8.5.2 10.8.5.3 … …
二、更新源伺服器安裝配置(rsync服務端)
1、雙擊cwRsyncServer_4.1.0_Installer.exe然後就一路下一步,安裝cwRsync服務端預設有一個管理員賬戶SvcCWRSYNC,可自行修改
安裝完成後,在“服務”裡面就可以看到cwRsync對應的服務了,安裝完成後需要手動啟動該服務
2、修改rsyncd.conf配置檔案(C:\Program Files\ICW\rsyncd.conf)
use chroot = false #不使用chroot
strict modes = false #靜態模式
hosts allow = * #所有IP均可
log file = rsyncd.log #log檔名,可以指定路徑
pid file = rsyncd.pid
port = 8173 #預設埠873
uid = 0 #不指定uid,不加這一行將無法使用任何賬戶
gid = 0 #不指定gid
max connections = 10 #最大連線數10
# Module definitions
# Remember cygwin naming conventions : c:work becomes /cygwin/c/work
[web_1]
path = /cygdrive/d/www/web_1 #需要備份的路徑(D盤www/web_1目錄)
read only = false #只讀
transfer logging = yes #記錄傳輸日誌
ignore errors #忽略無關的IO錯誤
list = no #不列檔案表
hosts allow = 10.8.5.0/255.255.255.0 #允許訪問的IP
hosts deny = * #不允許hosts allow以外的任何IP訪問
[web_2]
path = /cygdrive/d/www/web_2 #需要備份的路徑(D盤www/web_2目錄)
read only = false #只讀
transfer logging = yes #記錄傳輸日誌
ignore errors #忽略無關的IO錯誤
list = no #不列檔案表
hosts allow = 10.8.5.0/255.255.255.0 #允許訪問的IP
hosts deny = * #不允許hosts allow以外的任何IP訪問
3、配置檔案修改完成後,就手動啟動RsyncServer服務,netstat -an,看8173埠監聽沒
三、目的伺服器安裝配置(rsync客戶端)
1、雙擊cwRsync_4.1.0_Installer.exe,然後一路下一步
2、編寫批處理檔案定時同步更新
10.8.5.2 (rsync.bat)
@echo off
C:\”Program Files”\cwRsync\bin\rsync.exe -avzP --progress --delete rsync://10.8.5.240:8173/web_1 /cygdrive/d/www/web_1 >> d:\rsync_%date:~0,10%.log
10.8.5.3 (rsync.bat)
@echo off
C:\”Program Files”\cwRsync\bin\rsync.exe -avzP --progress --delete rsync://10.8.5.240:8173/web_2 /cygdrive/d/www/web_2 >> d:\rsync_%date:~0,10%.log
或者把C:\”Program Files”\cwRsync\bin\ 加到使用者的環境變數中,這樣rsync.exe前面就不用加絕對路徑了
3、引數說明
-a 引數,相當於-rlptgoD,
-r 是遞迴
-l 是連結檔案,意思是拷貝連結檔案;
-p 表示保持檔案原有許可權;
-t 保持檔案原有時間;
-g 保持檔案原有使用者組;
-o 保持檔案原有屬主;
-D 相當於塊裝置檔案;
-z 傳輸時壓縮;
-P 傳輸進度;
-v verbose,詳細模式輸出;
-u是隻同步已經更新的檔案,避免沒有更新的檔案被重複更新一次,不過要注意兩者機器時鐘的同步;
--progress 顯示備份過程;
--delete 刪除那些DST中SRC沒有的檔案,用作同步檔案用;
4、設定計劃任務
每5分鐘同步一次
5、手動測試同步資訊
C:\”Program Files”\cwRsync\bin\rsync.exe -avzP --progress --delete rsync://10.8.5.240:8173/web_1 /cygdrive/d/www/web_1