close

FreeNAS + RSYNC = 備份伺服器

FreeNAS是一個功能齊全的檔案伺服器,其安裝完成後的系統檔案約僅有32MB(可使用CF卡配上CFIDE的轉接版),記憶體需求為128MB。因此只要有一台普通舊電腦,可以接上大容量硬碟,就可以在家中弄一台專用的檔案伺服器囉。(ps. FreeNAS支援無線網路)

然而麻雀雖小,五臟俱全,FreeNAS提供Windows網芳(Samba)FTPNFSUnisonUPnPAFPRSYNCD等檔案傳輸協定,可滿足一般常用的需求。

關於FreeNAS的安裝及設定,chicman已經有一系列完整的介紹︰

http://chicwks.blogspot.com/search/label/FreeNAS

這邊我要特別介紹的是rsync的應用,rsynclinux系統常用的遠端同步化工具。例如debian的官方套件庫除了可以在官方的伺服器找到之外,還存在於許多社群提供的伺服器,這些社群提供的伺服器,就是官方伺服器的mirror站,而mirror站就可以使用rsync的工具來進行與官方站同步化的工作。rsync的簡單概念就是,它可以把一台電腦上的一個特定目錄及其子目錄,完整的同步到另一台電腦上的指定目錄下,並完全保留原始權限設定。而且透過rsync的技術,每次的同步化工作,僅會更新有修改的部份,以減少資料傳輸量及提高速度。

不過就FreeNAS來說,使用rsync的另一個應用就是備份囉,把客戶端主機(可以是windowsmacunix-like系統)的特定目錄資料,完整備份到FreeNAS主機上;而在必要的時候,可以再透過RSYNC進行還原。同時FreeNAS還提供軟體RAID功能,因此可以使用RAID 1來大大提高資料儲存的安全性。

FreeNAS
的安裝設定請參考chicman的文章,以下介紹RSYNCD的設定及客戶端使用 -

rsync 主機端的設定︰
1.
建立使用者/群組
 a. 建立名為system的群組(名字可自行指定)
  

 b. 建立名為rsync的使用者(名字可自行指定)
 
 
 


2.
設定rsync遠端備份主機︰
開啓rsync的設定非常的簡單,只要進入 服務:RSYNCD 頁面,並啓用服務即可。
 
 
  

 

ps.
因為rsync預設使用873的連接埠,因此若前端有防火牆,應注意開啓這個連接埠。

Unix like系統的rsync客戶端設定︰
Unix like系統一般都已經有rsync的程式可以使用,rsync的官方網頁位於http://samba.anu.edu.au/rsync/rsync的設定及指令可以參考使用如下︰

1.
首先建立rsync的伺服端密碼檔 編輯 /etc/rsyncd.passwd 這個檔案,填入FreeNASrsync這個使用者的密碼。

2.
使用以下的指令,將客戶端的 /var/www/ 目錄,整個備份到FreeNAS主機上以rsync-disk為分享名稱的硬碟中︰

# rsync -arHz --progress --delete --password-file=/etc/rsyncd.passwd /var/www rsync@140.117.120.224::rsync-disk

其中參數的說明如下︰

-a︰保留權限,除了Hard Link -r︰遞迴地複製目錄中的所有目錄
-H
︰保留 Hard Link
-z
︰資料備份前先壓縮 --progress︰顯示進度
--delete
︰如果要備份的主機上刪除了某個檔案,備份的主機也刪除某個檔案
--password-file
︰密碼檔的位置

 rsync@140.117.120.224 前面的 rsync 是使用者帳戶。

3.
為了能夠定期的自動備份,可將此指令寫進/etc/crobtab中。例如在該檔案中加入︰

0 5 * * * root /usr/bin/rsync -arHz --progress --delete --password-file=/etc/rsyncd.passwd /var/www rsync@140.117.120.224::rsync

則系統就會在每天早上五點中自動進行備份工作。

Windows系統的rsync客戶端設定

1. cwRsync
是一個for Windows系統的rsync程式,其官方網址如下︰

http://www.itefix.no/cwrsync/

2. cwRsync是一個指令示的程式,安裝該程式之後,其使用方式與Unix like系統雷同。在預設情況下,cwRsync是安裝在C:\Program Files\cwRsync\目錄下,其程式檔位於C:\Program Files\cwRsync\bin之中。

3.
使用此程式,應先進立編輯一個密碼檔rsyncd.passwd(置放的目錄可自己決定,我是放在C:\Program Files\cwRsync\bin),其內容即為備份主機上,rsync這個使用者的密碼。

4.
開啓一個console模式視窗(cmd),並使用以下指令,將位於C:\data目錄中的資料,整個備份到FreeNAS主機上以rsync為分享名稱的硬碟中︰

"C:\Program Files\cwRsync\bin\rsync.exe" -arHz --progress --delete --password-file="C:\Program Files\cwRsync\bin\rsyncd.passwd" /cygdrive/c/data rsync@140.117.120.224::rsync

要注意的是,在指令中,原本的C:\data路徑,在指令中必須寫成/cygdrive/c/data

5.
Windows下要進行定期自動備份工作,可以使用Windows的工作排程,並且輸入第4點中所設定的指令。

6. cwRsync
目前尚未有完整支援Windows Vista的版本,在Vista上使用,可能會因為莫明的原因,造成備份過程出現錯誤(FreeNAS備份主機端所建立的目錄,其權限為000,造成無法繼續備份),此部份的解決方式還有待查詢。

 

文章轉自
http://blog.chinson.idv.tw/2007/09/freenas-rsync.html

arrow
arrow
    全站熱搜

    ITMan 發表在 痞客邦 留言(2) 人氣()