說明:
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:123456,test是同步帳號,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