rhel_rsync詳細配置<四>rsync配置文件參數

 

附件1:配置文件參數

下面是常見的全局配置參數

Port:指定後臺程序使用的端口號,默認爲873

Uid該選項指定當該模塊傳輸文件時守護進程應該具有的uid,配合gid選項使用可以確定哪些可以訪問怎麼樣的文件權限,默認值是" nobody"

Gid:該選項指定當該模塊傳輸文件時守護進程應該具有的gid。默認值爲" nobody"

max connections指定該模塊的最大併發連接數量以保護服務器,超過限制的連接請求將被告知隨後再試。默認值是0,也就是沒有限制。  

lock file:指定支持max connections參數的鎖文件,默認值是/var/run/rsyncd.lock

motd file" motd file" 參數用來指定一個消息文件,當客戶連接服務器時該文件的內容顯示給客戶,默認是沒有motd文件的。  

log file" log file" 指定rsync的日誌文件,而不將日誌發送給syslog 

pid file:指定rsyncpid文件,通常指定爲/var/run/rsyncd.pid”  

下面是常見的模塊配置參數

主要是定義服務器哪個目錄要被同步輸出。其格式必須爲[module]”形式,這個名字就是在rsync 客戶端看到的名字,其實有點象Samba服務器提供的共享名。而服務器真正同步的數據是通過 path 來指定的。

Comment給模塊指定一個描述,該描述連同模塊名在客戶連接得到模塊列表時顯示給客戶。默認沒有描述定義。  

Path:指定該模塊的供備份的目錄樹路徑,該參數是必須指定的。  

read only yes爲只允許下載,no爲可以下載和上傳文件到服務器

exclude:用來指定多個由空格隔開的多個文件或目錄(相對路徑),將其添加到exclude列表中。這等同於在客戶端命令中使用—exclude----filter來指定某些文件或目錄不下載或上傳(既不可訪問)

exclude from指定一個包含exclude模式的定義的文件名,服務器從該文件中讀取exclude列表定義,每個文件或目錄需要佔用一行 

include 用來指定不排除符合要求的文件或目錄。這等同於在客戶端命令中使用--include來指定模式,結合includeexclude可以定義複雜的exclude/include規則。  

include from指定一個包含include模式的定義的文件名,服務器從該文件中讀取include列表定義。  

auth users :該選項指定由空格或逗號分隔的用戶名列表,只有這些用戶才允許連接該模塊。這裏的用戶和系統用戶沒有任何關係。如果" auth users" 被設置,那麼客戶端發出對該模塊的連接請求以後會被rsync請求challenged進行驗證身份這裏使用的challenge/response認證協議。用戶的名和密碼以明文方式存放在" secrets file" 選項指定的文件中。默認情況下無需密碼就可以連接模塊(也就是匿名方式)  

secrets file:該選項指定一個包含定義用戶名:密碼對的文件。只有在" auth users" 被定義時,該文件纔有作用。文件每行包含一個username:passwd對。一般來說密碼最好不要超過8個字符。沒有默認的secures file名,注意:該文件的權限一定要是600,否則客戶端將不能連接服務器。  

strict modes該選項指定是否監測密碼文件的權限,如果該選項值爲true那麼密碼文件只能被rsync服務器運行身份的用戶訪問,其他任何用戶不可以訪問該文件。默認值爲true  

hosts allow指定哪些IP的客戶允許連接該模塊。定義可以是以下形式:

單個IP地址,例如:192.167.0.1,多個IP或網段需要用空格隔開, 

整個網段,例如:192.168.0.0/24,也可以是192.168.0.0/255.255.255.0

 *”則表示所有,默認是允許所有主機連接。

hosts deny指定不允許連接rsync服務器的機器,可以使用hosts allow的定義方式來進行定義。默認是沒有hosts deny定義。  

ignore errors:指定rsyncd在判斷是否運行傳輸時的刪除操作時忽略server上的IO錯誤,一般來說rsync在出現IO錯誤時將將跳過--delete操作,以防止因爲暫時的資源不足或其它IO錯誤導致的嚴重問題。 

ignore nonreadable :指定rysnc服務器完全忽略那些用戶沒有訪問權限的文件。這對於在需要備份的目錄中有些文件是不應該被備份者得到的情況是有意義的。

use chroot如果" use chroot" 指定爲true,那麼rsync在傳輸文件以前首先chrootpath參數所指定的目錄下。這樣做的原因是實現額外的安全防護,但是缺點是需要以roots權限,並且不能備份指向外部的符號連接所指向的目錄文件。默認情況下chroot值爲true   

List:該選項設定當客戶請求可以使用的模塊列表時,該模塊是否應該被列出。如果設置該選項爲false,可以創建隱藏的模塊。默認值是true  

Timeout通過該選項可以覆蓋客戶指定的IP超時時間。通過該選項可以確保rsync服務器不會永遠等待一個崩潰的客戶端。超時單位爲秒鐘,0表示沒有超時定義,這也是默認值。對於匿名rsync服務器來說,一個理想的數字是600  

refuse options:通過該選項可以定義一些不允許客戶對該模塊使用的命令參數列表。這裏必須使用命令全名,而不能是簡稱。但發生拒絕某個命令的情況時服務器將報告錯誤信息然後退出。如果要防止使用壓縮,應該是:" dont compress = *"

dont compress: 用來指定那些不進行壓縮處理再傳輸的文件,默認值是*.gz *.tgz *.zip *.z *.rpm *.deb *.iso *.bz2 *.tbz

附件2Rsync同步算法

Rsync只所以同步文件的速度相當快,是因爲Rsync同步算法能在很短的時間內計算出需要備份的數據,關於Rsync的同步算法描述如下:

假定在1號和2號兩臺計算機之間同步相似的文件AB,其中1號對文件A擁有訪問權,2號對文件B擁有訪問權。並且假定主機1號與2號之間的網絡帶寬很小。那麼rsync算法將通過下面的五個步驟來完成:

1>.2號將文件B分割成一組不重疊的固定大小爲S字節的數據塊,最後一塊可能會比S 小。  

2>.2號對每一個分割好的數據塊執行兩種校驗:一種是32位的滾動弱校驗,另一種是128位的MD4強校驗。  

3>.2號將這些校驗結果發給1號。  

4>.1號通過搜索文件A的所有大小爲S的數據塊(偏移量可以任選,不一定非要是S的倍數),來尋找與文件B的某一塊有着相同的弱校驗碼和強校驗碼的數據塊。這項工作可以藉助滾動校驗的特性很快完成。  

5.>.1號發給2號一串指令來生成文件A2號上的備份。這裏的每一條指令要麼是對文件B經擁有某一個數據塊而不須重傳的證明,要麼是一個數據塊,這個數據塊肯定是沒有與文件B的任何一個數據塊匹配上的。

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章