簡單單向同步配置(客戶端同步文件到服務端):
服務端:cwRsyncServer_4.1.0_Installer
客戶端:cwRsync_4.1.0_Installer
下載地址:http://pan.baidu.com/s/1o65qWjw
因爲是多臺服務器同步,經測試,僅安裝服務端版本即可滿足要求。
文件推送方案:A->B->C->A,B作爲A的服務端,C作爲B的服務端,A作爲C的服務端。
安裝完畢後,修改配置文件rsyncd.conf:
use chroot = false strict modes = false hosts allow = * log file = rsyncd.log lock file = rsyncd.lock max connection = 5 uid = 0 gid = 0 # Module definitions # windows下磁盤格式需要轉換: c:\work 變成 /cygwin/c/work # [rsync] path = /cygdrive/c/files auth users = rsyncd secrets file = /cygdrive/c/rsyncd.secrets read only = false list = no transfer logging = yes
服務端創建密碼文件 C:\rsyncd.secrets
rsyncd:123456 #用戶名:密碼
創建同步目錄 C:\files\upload
啓動Windows服務:RsyncServer,並修改爲自動啓動。
若遭遇無法啓動的情況,報以下錯誤:
事件 ID ( 0 )的描述(在資源( rsyncd )中)無法找到。本地計算機可能沒有必要的註冊信息或消息 DLL 文件來從遠程計算機顯示消息。您可能可以使用 /AUXSOURCE= 標識來檢索詞描述;查看幫助和支持以瞭解詳細信息。下列信息是事件的一部分: rsyncd: PID 748: uid 4294967295 (-1) is impossible to set on "upload/.2.txt.KO64ZD" (in shouyou).
解決方案:刪除安裝目錄下rsyncd.pid文件;
永久解決方案:添加計劃任務,每次重啓前刪除rsyncd.pid。
查看服務有無啓動,默認爲873.
netstat -anp tcp
服務端:192.168.128.131,客戶端:192.168.128.132
客戶端查看服務端端口是否開啓:
telnet 192.168.128.131 873
同步方法:可指定到服務端rsync.exe目錄C:\Program Files\ICW\bin
rsync -vPrtopg --delete --progress /cygdrive/c/files/upload [email protected]::rsync
--delete:保持刪除文件同步
此時會提示用戶登錄密碼
無密碼同步方法:
客戶端添加密碼驗證文件 C:\rsyncd_client.secrets
僅添加密碼:
123456
重新來執行rsync,現在應該就不會提示輸入密碼了
rsync -vPrtopg --delete --progress /cygdrive/c/files/upload < c:\rsyncd_client.secrets [email protected]::rsync
最後,加入定時計劃備份。
編寫rsync.bat批處理腳本
@echo off set rsynclog="C:\Program Files\ICW\rsync.log" set nowtime=%date:~0,10% %time% echo %nowtime% >> %rsynclog% cd /d C:\"Program Files"\ICW\bin rsync -vPrtopg --delete --progress /cygdrive/c/files/upload < c:\rsyncd_client.secrets [email protected]::rsync >> %rsynclog% @echo -------------------------------------------------- >> %rsynclog% @echo. >> %rsynclog%
創建任務