使用rsync在windows(服務端)與linux(客戶端)之間同步


說明:

1、cwRsyncServer服務端

系統:Windows7

IP地址:192.168.0.110

2、Rsync客戶端

系統:CentOS 6.7

IP地址:192.168.0.141

實現目的:

Rsync客戶端每天凌晨5:00自動同步cwRsyncServer服務端G:\rsyncfile目錄中的數據到自己的/tmp/rsync目錄中

一、cwRsyncServer服務端配置

下載地址:

https://www.backupassist.com/rsync/

安裝cwRsyncServer_4.2.0_Installer

Next

I Agree(同意)

填寫安裝路徑

Next

Service account:test (新建的一個系統賬戶)

Type password:123456(密碼)

Confirm password:123456(密碼)

備注:系統會自動創建一個賬戶:test來運行cwRsyncServer服務端程序

以上信息默認即可

Install (安裝)

Close(關閉),安裝完成

開始-設置-控制面板-管理工具-服務

找到RsyncSever選項,雙擊打開

啟動類型:自動

點“啟動”

應用-確定

window7中創建一個存放文件的目錄(rsync同步用的),我這里創建的是G:\rsyncfile

 

 

右擊rsyncfile目錄,打開屬性——安全,把安裝rsyncd時,設置的帳號添加進來,並設置權限為完全控制(我安裝rsyncd的時候,設置了帳號是test,密碼123456):

修改配置文件:

打開G:\rsyncserver\ICW\rsyncd.conf

修改內容大概如下:

use chroot = false

strict modes = false

hosts allow = *

log file = rsyncd.log

# Module definitions

# Remember cygwin naming conventions : c:\work becomes /cygwin/c/work

#

[rsyncfile]

path = /cygdrive/g/rsyncfile

read only = false

transfer logging = yes

auth users = test

secrets file = etc/rsyncd.secrets

UID = 0

GID = 0

注意path路徑,path = /cygdrive/是固定的,不要改,后面連接的g/rsyncfile,則是我們剛才所建的目錄路徑,剛才我是建在G盤的,目錄為rsyncfile

其它參數詳解:

read only = true #客戶端只讀

list = no#不允許列出文件

hosts allow=192.168.0.141 #允許連接IP,多個IP中間用英文狀態下逗號隔,不限制IP填寫*即可

auth users =test #允許連接的用戶名

secrets file = etc/rsyncd.secrets #存放用戶名密碼的認證文件路徑

創建rsync同步帳號密碼文件:

進入:G:\rsyncserver\ICW\etc,創建文件:rsyncd.secrets,文件里輸入test:123456test是同步帳號,123456是同步密碼

cwRsyncServer服務端安裝設置完成

二、Rsync客戶端配置

1、安裝Rsync客戶端軟件

yum install rsync -y

chkconfig rsync on  #設置開機啟動rsync

/etc/init.d/xinetd start #啟動(CentOS中,Rsync是以xinetd來管理的)

2、測試Rsync客戶端是否與cwRsyncServer服務端通信成功(cwRsyncServer服務端防火牆需要開啟tcp 873端口)

yum install telnet #安裝telnet測試工具

telnet 192.168.0.110 873 #輸入命令后回車,如下圖所示,表示通信成功

3、測試數據同步

[root@host1 rsync]# rsync -vzrtopg --port=873 --progress --delete test@192.168.0.110::rsyncfile  /tmp/rsync

這里會提示輸入密碼:123456

注意:此處的密碼為cwRsyncServer服務端G:\rsyncserver\ICW\etc\rsyncd.secrets文件配置的密碼

[root@host1 rsync]# pwd
/tmp/rsync
[root@host1 rsync]# ls
123.txt

4、添加計划任務,每天自動執行數據同步腳本

vi /etc/passwd.txt #配置文件,添加以下內容

123456 #密碼

:wq! #保存退出

chmod 600 /etc/passwd.txt #設置文件權限,只設置文件所有者具有讀取、寫入權限即可

cd /shell

vim rsyncbak.sh #編輯,添加以下內容

#!/bin/sh

rsync -vzrtopg --port=873 --progress --delete test@192.168.0.110::rsyncfile /tmp/rsync --password-file=/etc/passwd.txt

:wq! #保存,退出

chmod +x /shell/rsyncbak.sh #添加腳本直接權限

crontab -e

0 5 * * * sh /shell/rsyncbak.sh > /var/log/rsyncbak.txt 2>&1

設置完成之后,每天凌晨5點,Rsync客戶端會自動同步cwRsyncServer服務端G:\rsyncfile目錄數據到自己的/tmp/rsync目錄中

至此,CentOS客戶端與Windows服務端實現數據同步設設置完成

 

 相關文章:使用rsync在linux(服務端)與windows(客戶端)之間同步

 參考文檔:http://www.dedecms.com/knowledge/servers/linux-bsd/2012/0819/8524.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM