rsync參數(shù)詳解_第1頁(yè)
rsync參數(shù)詳解_第2頁(yè)
rsync參數(shù)詳解_第3頁(yè)
rsync參數(shù)詳解_第4頁(yè)
rsync參數(shù)詳解_第5頁(yè)
已閱讀5頁(yè),還剩12頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、rsync簡(jiǎn)介以及下載安裝一、rsync簡(jiǎn)介對(duì)于選擇linux 作為應(yīng)用平臺(tái)的的中小型企業(yè)或網(wǎng)站來(lái)說(shuō),往往面臨如何實(shí)現(xiàn)數(shù)據(jù)遠(yuǎn)程備份或者網(wǎng)站鏡象的問(wèn)題,雖然有商業(yè)化的備份和鏡象產(chǎn)品可供選擇,但這些產(chǎn)品的價(jià)格往往過(guò)于昂貴。因此如何利用自由軟件高效實(shí)現(xiàn)遠(yuǎn)程備份和網(wǎng)站鏡象就成為一個(gè)值得討論的話(huà)題通過(guò)網(wǎng)絡(luò)進(jìn)行遠(yuǎn)程數(shù)據(jù)備份或者網(wǎng)站鏡象的最簡(jiǎn)單的方法就是使用wget,但是這種方式每次都需要將所有數(shù)據(jù)都重新在網(wǎng)絡(luò)上傳輸一遍,而不考慮哪些文件是經(jīng)過(guò)更新的,因此效率非常低下。尤其在需要備份的數(shù)據(jù)量很大的時(shí)候,往往需要花費(fèi)數(shù)個(gè)小時(shí)來(lái)在網(wǎng)絡(luò)上進(jìn)行數(shù)據(jù)傳輸因此這里就介紹一種高效的網(wǎng)絡(luò)遠(yuǎn)程備份和鏡象工具-rsync,它可

2、以滿(mǎn)足絕大多數(shù)要求不是特別嚴(yán)格的備份需求rsync是類(lèi)unix系統(tǒng)下的數(shù)據(jù)鏡像備份工具,從軟件的命名上就可以看出來(lái)了-remote sync,它的特性如下:(1)可以鏡像保存整個(gè)目錄樹(shù)和文件系統(tǒng)(2)可以很容易做到保持原來(lái)文件的權(quán)限、時(shí)間、軟硬鏈接等等(3)無(wú)須特殊權(quán)限即可安裝(4)優(yōu)化的流程,文件傳輸效率高 (5)可以使用rcp、ssh等方式來(lái)傳輸文件,當(dāng)然也可以通過(guò)直接的socket連接 (6)支持匿名傳輸,以方便進(jìn)行網(wǎng)站鏡象rsync的版本區(qū)別(1)rsync的2.6.X版本,在對(duì)文件進(jìn)行備份時(shí),是先列表后備份,所以在推送大量文件時(shí),會(huì)耗費(fèi)很多,甚至是1G多的內(nèi)存資源(2)rsync的3

3、.0.X版本,在對(duì)文件進(jìn)行備份時(shí),是采用incremental file list,即:一邊列表一邊備份,所以占用的內(nèi)存資源只有4M5M,因此在實(shí)際的環(huán)境中是完全可行的=二、rsync軟件的下載與安裝 1、下載(/)目前最新版本為:3.0.7,可以選擇從原始網(wǎng)站下載:/ftp/rsync/,也可以選擇從本站下載:rsync 3.0.7 2、編輯與安裝(1)RPM方式安裝(默認(rèn)已經(jīng)安裝)rootServer # rpm -ivh /cdrom/Server/rsync-2.6.8-3.1.i3

4、86.rpm(2)源碼方式安裝rootServer rsync-3.0.7# ./configurerootServer rsync-3.0.7# makerootServer rsync-3.0.7# make install注意:必須在服務(wù)器A和B上都安裝rsync,其中A服務(wù)器上是以服務(wù)器模式運(yùn)行rsync,而B(niǎo)上則以客戶(hù)端方式運(yùn)行rsync,這樣在web服務(wù)器A上運(yùn)行rsync守護(hù)進(jìn)程,在B上定時(shí)運(yùn)行客戶(hù)程序來(lái)備份web服務(wù)器A上需要備份的內(nèi)容rsync的配置(1)一、啟動(dòng)rsync服務(wù)在web服務(wù)器A上需要以守護(hù)進(jìn)程方式來(lái)啟動(dòng)rsync服務(wù)器,只需要運(yùn)行如下指令即可rootServe

5、r rsync-3.0.7# /usr/local/bin/rsync -daemonrsync默認(rèn)服務(wù)端口為873,服務(wù)器在該端口接收客戶(hù)的匿名或者認(rèn)證方式的備份請(qǐng)求。如果要在啟動(dòng)時(shí)把服務(wù)起來(lái),有幾種不同的方法,比如:(1)加入inetd.conf第一步:編輯/etc/services,加入rsync 873/tcp,指定rsync的服務(wù)端口是873第二步:編加/etc/inetd.conf,加入rsync stream tcp nowait root /bin/rsync rsync -daemon注:對(duì)于xinetd,設(shè)置方法類(lèi)似(2)加入/etc/rc.local編輯/etc/rc.d

6、/rc.local,在最后添加:/usr/local/bin/rsync -daemon=二、配置rsync1、rsync服務(wù)器端1)rsync服務(wù)器的配置文件為/etc/rsyncd.conf,其控制認(rèn)證、訪(fǎng)問(wèn)、日志記錄等等。該文件是由一個(gè)或多個(gè)模塊結(jié)構(gòu)組成。一個(gè)模塊定義以方括弧中的模塊名開(kāi)始,直到下一個(gè)模塊定義開(kāi)始或者文件結(jié)束,模塊中包含格式為name = value的參數(shù)定義。每個(gè)模塊其實(shí)就對(duì)應(yīng)需要備份的一個(gè)目錄樹(shù),比方說(shuō)在我們的實(shí)例環(huán)境中,有三個(gè)目錄樹(shù)需要備份:/www/、/home /web_user1/和/home/web_user2/,那么就需要在配置文件中定義三個(gè)模塊,分別對(duì)應(yīng)

7、三個(gè)目錄樹(shù)。配置文件是行為單位的,也就是每個(gè)新行都表示一個(gè)新的注釋、模塊定義或者參數(shù)賦值。以#開(kāi)始的行表示注釋?zhuān)?quot;"結(jié)束的行表示下面一行是該行的繼續(xù)。參數(shù)賦值中等號(hào)后可能是一個(gè)大小寫(xiě)不敏感的字符串、一個(gè)以trure/false表示的布爾值2)/etc/rsyncd.conf的配置參數(shù)綠色選項(xiàng):基本模塊參數(shù)藍(lán)色選項(xiàng):模塊控制參數(shù)粉紅選項(xiàng):模塊文件篩選參數(shù)紫色選項(xiàng):模塊用戶(hù)認(rèn)證參數(shù)紅色選項(xiàng):模塊訪(fǎng)問(wèn)控制參數(shù)白色選項(xiàng):模塊日志參數(shù)全局參數(shù)全局參數(shù)的位置:在文件中module之前的所有參數(shù)都是全局參數(shù),當(dāng)然也可以在全局參數(shù)部分定義模塊參數(shù),這時(shí)候該參數(shù)的值就是所有模塊的默認(rèn)值ad

8、dress在獨(dú)立運(yùn)行時(shí),用于指定的服務(wù)器運(yùn)行的 IP 地址。由 xinetd 運(yùn)行時(shí)將忽略此參數(shù),使用命令行上的 -address 選項(xiàng)替代(默認(rèn)值為:所有IP地址)motd filelog filesocket options指定一個(gè)消息文件,當(dāng)客戶(hù)連接服務(wù)器時(shí)該文件的內(nèi)容顯示給客戶(hù),默認(rèn)是沒(méi)有motd文件的指定rsync的日志文件,而不將日志發(fā)送給syslog指定自定義 TCP 選項(xiàng)pid fileport  端口號(hào)rsync 的守護(hù)進(jìn)程將其 PID 寫(xiě)入指定的文件指定 rsync 守護(hù)進(jìn)程監(jiān)聽(tīng)的端口號(hào)。 由 xinetd 運(yùn)行時(shí)將忽略此參數(shù),使用命令行上的-port 選項(xiàng)替代s

9、yslog facility指定rsync發(fā)送日志消息給syslog時(shí)的消息級(jí)別,常見(jiàn)的消息級(jí)別是:uth, authpriv, cron, daemon, ftp, kern, lpr, mail, news, security, sys-log, user, uucp, local0, local1, local2, local3,local4, local5, local6和local7。默認(rèn)值是daemon模塊參數(shù)模塊參數(shù)的位置:在所定義的module模塊當(dāng)中使用comment給模塊指定一個(gè)描述,該描述連同模塊名在客戶(hù)連接得到模塊列表時(shí)顯示給客戶(hù)。默認(rèn)沒(méi)有描述定義path指定該模塊的供

10、備份的目錄樹(shù)路徑,該參數(shù)是必須指定的use chroot如果"use chroot"指定為true,那么rsync在傳輸文件以前首先chroot到path參數(shù)所指定的目錄下。這樣做的原因是實(shí)現(xiàn)額外的安全防護(hù),但是缺點(diǎn)是需要以roots權(quán)限,并且不能備份指向外部的符號(hào)連接所指向的目錄文件。默認(rèn)情況下chroot值為truemax connections指定該模塊的最大并發(fā)連接數(shù)量以保護(hù)服務(wù)器,超過(guò)限制的連接請(qǐng)求將被告知隨后再試。默認(rèn)值是0,也就是沒(méi)有限制lock file指定支持max connections參數(shù)的鎖文件,默認(rèn)值是/var/run/rsyncd.lockrea

11、d only該選項(xiàng)設(shè)定是否允許客戶(hù)上載文件。如果為true那么任何上載請(qǐng)求都會(huì)失敗,如果為false并且服務(wù)器目錄讀寫(xiě)權(quán)限允許那么上載是允許的。默認(rèn)值為truelist該選項(xiàng)設(shè)定當(dāng)客戶(hù)請(qǐng)求可以使用的模塊列表時(shí),該模塊是否應(yīng)該被列出。如果設(shè)置該選項(xiàng)為false,可以創(chuàng)建隱藏的模塊。默認(rèn)值是trueuid指定該模塊以指定的 UID 傳輸文件,配合gid選項(xiàng)使用可以確定哪些可以訪(fǎng)問(wèn)怎么樣的文件權(quán)限,默認(rèn)值是"nobody"gidwrite only指定該模塊以指定的 GID 傳輸文件。默認(rèn)值為"nobody"指定是否允許客戶(hù)下載文件。若為 true 則不允許下

12、載;若為 false 并且服務(wù)器目錄也具有讀權(quán)限則允許下載(默認(rèn)值為:false)exclude用來(lái)指定多個(gè)由空格隔開(kāi)的多個(gè)模式列表,并將其添加到exclude列表中。這等同于在客戶(hù)端命令中使用-exclude來(lái)指定模式,不過(guò)配置文件中指定的exlude模式不會(huì)傳遞給客戶(hù)端,而僅僅應(yīng)用于服務(wù)器。一個(gè)模塊只能指定一個(gè)exlude選項(xiàng),但是可以在模式前面使用"-"和"+"來(lái)指定是exclude還是include注意的一點(diǎn):該選項(xiàng)有一定的安全性問(wèn)題,客戶(hù)很有可能繞過(guò)exclude列表,如果希望確保特定的文件不能被訪(fǎng)問(wèn),那就最好結(jié)合uid/gid選項(xiàng)一起使用ex

13、clude from指定一個(gè)包含exclude模式的定義的文件名,服務(wù)器從該文件中讀取exlude列表定義include用來(lái)指定多個(gè)由空格隔開(kāi)的多個(gè)rsync并應(yīng)該exclude的模式列表。這等同于在客戶(hù)端命令中使用-include來(lái)指定模式,結(jié)合include和 exclude可以定義復(fù)雜的exclude/include規(guī)則 。一個(gè)模塊只能指定一個(gè)include選項(xiàng),但是可以在模式前面使用"-"和"+"來(lái)指定是exclude還是includeinclude from指定一個(gè)包含include模式的定義的文件名,服務(wù)器從該文件中讀取include列表定義

14、auth users該選項(xiàng)指定由空格或逗號(hào)分隔的用戶(hù)名列表,只有這些用戶(hù)才允許連接該模塊。這里的用戶(hù)和系統(tǒng)用戶(hù)沒(méi)有任何關(guān)系。如果"auth users"被設(shè)置,那么客戶(hù)端發(fā)出對(duì)該模塊的連接請(qǐng)求以后會(huì)被rsync請(qǐng)求challenged進(jìn)行驗(yàn)證身份這里使用的 challenge/response認(rèn)證協(xié)議。用戶(hù)的名和密碼以明文方式存放在"secrets file"選項(xiàng)指定的文件中。默認(rèn)情況下無(wú)需密碼就可以連接模塊(也就是匿名方式)secrets file該選項(xiàng)指定一個(gè)包含定義用戶(hù)名:密碼對(duì)的文件。只有在"auth users"被定義時(shí),該

15、文件才有作用。文件每行包含一個(gè)username:passwd對(duì)。一般來(lái)說(shuō)密碼最好不要超過(guò)8個(gè)字符。沒(méi)有默認(rèn)的 secures file名,需要限式指定一個(gè)。(例如:/etc/rsyncd.secrets,同時(shí)rsyncd.secrets文件的權(quán)限建議設(shè)置為:0600)strict modes該選項(xiàng)指定是否監(jiān)測(cè)密碼文件的權(quán)限,如果該選項(xiàng)值為true那么密碼文件只能被rsync服務(wù)器運(yùn)行身份的用戶(hù)訪(fǎng)問(wèn),其他任何用戶(hù)不可以訪(fǎng)問(wèn)該文件。默認(rèn)值為truehosts allow該選項(xiàng)指定哪些IP的客戶(hù)允許連接該模塊??蛻?hù)模式定義可以是以下形式:xxx.xxx.xxx.xxx,客戶(hù)主機(jī)只有完全匹配該IP才允

16、許訪(fǎng)問(wèn),例如:a.b.c.d/n屬于該網(wǎng)絡(luò)的客戶(hù)都允許連接該模塊例如:/24a.b.c.d/e.f.g.h屬于該網(wǎng)絡(luò)的客戶(hù)都允許連接該模塊例如:/一個(gè)主機(jī)名客戶(hù)主機(jī)只有擁有該主機(jī)名才允許訪(fǎng)問(wèn)例如:*所有屬于該域的主機(jī)都允許默認(rèn)是允許所有主機(jī)連接hosts deny指定不允許連接rsync服務(wù)器的機(jī)器,可以使用hosts allow的定義方式來(lái)進(jìn)行定義。默認(rèn)是沒(méi)有hosts deny定義ignore errors指定在 rsync 服務(wù)器上運(yùn)行delete 操作時(shí)是否忽略 I/O 錯(cuò)誤。一般來(lái)說(shuō) rsyn

17、c 在出現(xiàn) I/O 錯(cuò)誤時(shí)將將跳過(guò)-delete 操作,以防止因?yàn)闀簳r(shí)的資源不足或其它 I/O 錯(cuò)誤導(dǎo)致的嚴(yán)重問(wèn)題,默認(rèn)值為trueignore nonreadable指定 rysnc 服務(wù)器完全忽略那些用戶(hù)沒(méi)有訪(fǎng)問(wèn)權(quán)限的文件。這對(duì)于在需要備份的目錄中有些不應(yīng)該被備份者獲得的文件時(shí)是有意義的,默認(rèn)值為flasetransfer logging使rsync服務(wù)器使用ftp格式的文件來(lái)記錄下載和上載操作在自己?jiǎn)为?dú)的日志中l(wèi)og format通過(guò)該選項(xiàng)用戶(hù)在使用transfer logging可以自己定制日志文件的字段。其格式是一個(gè)包含格式定義符的字符串,可以使用的格式定義符如下所示:%h遠(yuǎn)程主機(jī)名

18、%a遠(yuǎn)程IP地址%l文件長(zhǎng)度字符數(shù)%p該次rsync會(huì)話(huà)的進(jìn)程id%o操作類(lèi)型:"send"或"recv"、”del.”%f文件名%P模塊路徑%m模塊名%t當(dāng)前時(shí)間%u認(rèn)證的用戶(hù)名(匿名時(shí)是null)%b實(shí)際傳輸?shù)淖止?jié)數(shù)%c當(dāng)發(fā)送文件時(shí),該字段記錄該文件的校驗(yàn)碼默認(rèn)log格式為:"%o %h %a %m (%u) %f %l",一般來(lái)說(shuō),在每行的頭上會(huì)添加"%t %p "。在源代碼中同時(shí)發(fā)布有一個(gè)叫rsyncstats的perl腳本程序來(lái)統(tǒng)計(jì)這種格式的日志文件timeout該選項(xiàng)可以覆蓋客戶(hù)指定的 IP 超時(shí)時(shí)間。

19、從而確保 rsync 服務(wù)器不會(huì)永遠(yuǎn)等待一個(gè)崩潰的客戶(hù)端。對(duì)于匿名 rsync 服務(wù)器來(lái)說(shuō),理想的數(shù)字是 600(單位為秒),默認(rèn)值為0(無(wú)限制)refuse options通過(guò)該選項(xiàng)可以定義一些不允許客戶(hù)對(duì)該模塊使用的命令參數(shù)列表。這里必須使用命令全名,而不能是簡(jiǎn)稱(chēng)。但發(fā)生拒絕某個(gè)命令的情況時(shí)服務(wù)器將報(bào)告錯(cuò)誤信息然后退出。如果要防止使用壓縮,應(yīng)該是:"dont compress = *"dont compress用來(lái)指定那些不進(jìn)行壓縮處理再傳輸?shù)奈募?,默認(rèn)值是: *.gz *.tgz *.zip *.z *.rpm *.deb *.iso *.bz2 *.tbz=2、rs

20、ync客戶(hù)命令 在對(duì)rsync服務(wù)器配置結(jié)束以后,下一步就需要在客戶(hù)端發(fā)出rsync命令來(lái)實(shí)現(xiàn)將服務(wù)器端的文件備份到客戶(hù)端來(lái)。rsync是一個(gè)功能非常強(qiáng)大的工具,其命令也有很多功能特色選項(xiàng),我們下面就對(duì)它的選項(xiàng)一一進(jìn)行分析說(shuō)明1)rsync的六種工作模式及相應(yīng)的指令rsync OPTION. SRC SRC. DEST拷貝本地文件;當(dāng)SRC和DES路徑信息都不包含有單個(gè)冒號(hào)":"分隔符時(shí)就啟動(dòng)該工作模式rsync OPTION. SRC SRC. USERHOST:DEST使用一個(gè)遠(yuǎn)程shell程序(如rsh、ssh)來(lái)實(shí)現(xiàn)將本地機(jī)器的內(nèi)容拷貝到遠(yuǎn)程機(jī)器。當(dāng)DST路徑地址包

21、含單個(gè)冒號(hào)":"分隔符時(shí)啟動(dòng)該模式rsync OPTION. USERHOST:SRC DEST使用一個(gè)遠(yuǎn)程shell程序(如rsh、ssh)來(lái)實(shí)現(xiàn)將遠(yuǎn)程機(jī)器的內(nèi)容拷貝到本地機(jī)器。當(dāng)SRC地址路徑包含單個(gè)冒號(hào)":"分隔符時(shí)啟動(dòng)該模式rsync OPTION. USERHOST:SRC DEST從遠(yuǎn)程rsync服務(wù)器中拷貝文件到本地機(jī)。當(dāng)SRC路徑信息包含":"分隔符時(shí)啟動(dòng)該模式rsync OPTION. SRC SRC. USERHOST:DEST從本地機(jī)器拷貝文件到遠(yuǎn)程rsync服務(wù)器中。當(dāng)DST路徑信息包含":"

22、;分隔符時(shí)啟動(dòng)該模式rsync:/USERHOST:PORT/SRC DEST列遠(yuǎn)程機(jī)的文件列表。這類(lèi)似于rsync傳輸,不過(guò)只要在命令中省略掉本地機(jī)信息即可rsync OPTION. 2)rsync的用法(1)在使用rsync傳輸文件時(shí),需要指定一個(gè)源和一個(gè)目的,其中一個(gè)可能是遠(yuǎn)程機(jī)器的資源信息例如:rsync  *.c  servivcer:src/表示將傳輸當(dāng)前目錄下所有以.c結(jié)尾的文件到機(jī)器servivcer的src目錄下。如果文件已經(jīng)存在于遠(yuǎn)程機(jī)器,則會(huì)調(diào)用遠(yuǎn)程更新協(xié)議來(lái)實(shí)現(xiàn)僅僅傳輸那些更新過(guò)的文件 (2)例如:rsync  -avz 

23、0;servivcer:src/bar  /data/tmp該命令則遞歸地傳輸機(jī)器servivcer上的src/bar目錄下的所有內(nèi)容到本地/data/tmp/bar目錄中。文件以歸檔模式進(jìn)行傳輸,以確保符號(hào)鏈結(jié)、屬性、權(quán)限、屬主等信息在傳輸中都被保存。此外,可以使用壓縮技術(shù)來(lái)加快數(shù)據(jù)傳輸:rsync  -avz  servivcer:src/bar/   /data/tmp注意:路徑信息以"/"結(jié)尾時(shí)表示拷貝該目錄下的所有文件,而不以"/"結(jié)尾表示拷貝該目錄。當(dāng)配合使用-delete選項(xiàng)時(shí)這兩種情況的區(qū)

24、別將會(huì)表現(xiàn)出來(lái) (3)也可以以本地模式來(lái)使用rsync,如果SRC和DST路徑中都沒(méi)有任何":"符號(hào)則表示該命令運(yùn)行在本地模式,等同于cp命令(4)rsync  :這種模式則將會(huì)列出.可以訪(fǎng)問(wèn)的所有模塊信息選項(xiàng)說(shuō)明-v, -verbose詳細(xì)模式輸出-q, -quiet精簡(jiǎn)輸出模式-c, -checksum打開(kāi)校驗(yàn)開(kāi)關(guān),強(qiáng)制對(duì)文件傳輸進(jìn)行校驗(yàn)-a, -archive歸檔模式,表示以遞歸方式傳輸文件,并保持所有文件屬性,等于-rlptgoD(注意:不包括-H)-r, -recursive 對(duì)子目錄以遞歸模式處理-R, -relative使用相對(duì)路徑信息例如

25、:rsync foo/bar/foo.c remote:/tmp/則在/tmp目錄下創(chuàng)建foo.c文件,而如果使用-R參數(shù)例如:rsync -R foo/bar/foo.c remote:/tmp/則會(huì)創(chuàng)建文件/tmp/foo/bar/foo.c,也就是會(huì)保持完全路徑信息-b, -backup將接收方與發(fā)送方的數(shù)據(jù)進(jìn)行比較,但它們不同時(shí),那么對(duì)目標(biāo)目錄(接收方)中的舊版文件進(jìn)行備份,同時(shí)還可以使用-suffix選項(xiàng)來(lái)指定不同的備份文件前綴-backup-dir=DIR與 -b 結(jié)合使用,將舊版本的備份文件存到 DIR 目錄中-suffix=SUFFIX定義備份文件前綴-u, -update僅僅

26、進(jìn)行更新,也就是跳過(guò)所有已經(jīng)存在于DST,并且文件時(shí)間晚于要備份的文件。(不覆蓋更新的文件)-l, -links保留軟鏈結(jié)-L, -copy-links想對(duì)待常規(guī)文件一樣處理軟鏈結(jié)-copy-unsafe-links僅僅拷貝指向SRC路徑目錄樹(shù)以外的鏈結(jié)-safe-links忽略指向SRC路徑目錄樹(shù)以外的鏈結(jié)(默認(rèn))-H, -hard-links保留硬鏈結(jié)-p, -perms保持文件權(quán)限-o, -owner保持文件屬主信息(注意:使用該選項(xiàng),需root用戶(hù)來(lái)運(yùn)行rsync指令)-g, -group保持文件屬組信息-D, -devices保持設(shè)備文件信息(注意:使用該選項(xiàng),需root用戶(hù)來(lái)運(yùn)行r

27、sync指令)-t, -times保持文件時(shí)間信息-S, -sparse對(duì)稀疏文件進(jìn)行特殊處理以節(jié)省DST的空間-n, -dry-run顯示哪些文件將被傳輸-W, -whole-file拷貝文件,不進(jìn)行增量檢測(cè)-x, -one-file-system不要跨越文件系統(tǒng)邊界-B, -block-size=SIZE檢驗(yàn)算法使用的塊尺寸,默認(rèn)是700字節(jié)-e, -rsh=COMMAND指定替代rsh的shell程序-rsync-path=PATH指定遠(yuǎn)程服務(wù)器上的rsync命令所在路徑信息-C, -cvs-exclude使用和CVS一樣的方法自動(dòng)忽略文件,用來(lái)排除那些不希望傳輸?shù)奈募?existing

28、僅僅更新那些已經(jīng)存在于DST(接收端)的文件,而不備份那些新創(chuàng)建的文件-delete刪除那些接收端還有而發(fā)送端已經(jīng)不存在的文件-delete-excluded同樣刪除接收端(DST)那些被該選項(xiàng)指定排除的文件-delete-after-daemon接收者在傳輸之后進(jìn)行刪除操作表示以守護(hù)進(jìn)程方式運(yùn)行-ignore-errors及時(shí)出現(xiàn)IO錯(cuò)誤也進(jìn)行刪除-max-delete=NUM最多刪除NUM個(gè)文件-partial保留那些因故沒(méi)有完全傳輸?shù)奈募?,以是加快隨后的再次傳輸-force強(qiáng)制刪除目錄,即使不為空-numeric-ids不將數(shù)字的用戶(hù)和組ID匹配為用戶(hù)名和組名-timeout=TIMEI

29、P超時(shí)時(shí)間,單位為秒-I, -ignore-times不跳過(guò)那些有同樣的時(shí)間和長(zhǎng)度的文件-size-only當(dāng)決定是否要備份文件時(shí),僅僅察看文件大小而不考慮文件時(shí)間-modify-window=NUM 決定文件是否時(shí)間相同時(shí)使用的時(shí)間戳窗口,默認(rèn)為0-T -temp-dir=DIR在DIR中創(chuàng)建臨時(shí)文件-compare-dest=DIR同樣比較DIR中的文件來(lái)決定是否需要備份-P等同于 -partial-progress顯示備份過(guò)程-z, -compress對(duì)備份的文件在傳輸時(shí)進(jìn)行壓縮處理-exclude=PATTERN指定排除不需要傳輸?shù)奈募J狡ヅ洌ɡ纾篹x*)-include=PATT

30、ERN指定不排除而需要傳輸?shù)奈募J狡ヅ洌ɡ纾篿n*)-exclude-from=FILE從 FILE 中讀取排除規(guī)則-include-from=FILE從 FILE 中讀取包含規(guī)則-version打印版本信息-address=IPADRESS綁定到特定的地址-config=FILE指定其他的配置文件,不使用默認(rèn)的/etc/rsyncd.conf文件-port=PORT指定特殊的監(jiān)聽(tīng)端口,默認(rèn)為 873 端口-blocking-io對(duì)遠(yuǎn)程shell使用阻塞IO-stats 給出某些文件的傳輸狀態(tài)-progress 在傳輸時(shí)現(xiàn)實(shí)傳輸過(guò)程-log-format=format指定日志文件格式-pa

31、ssword-file=FILE從FILE中得到密碼(注意:FILE文件只能放置密碼,而不參放置用戶(hù)名,且權(quán)限建議設(shè)置為0600)-bwlimit=KBPS限制I/O帶寬,單位為KB/s-h, -help-4, IPV4-6, IPV6-sockopts=OPTIONS顯示幫助信息使用IPV4使用IPV6指定自定義 TCP 選項(xiàng)rsync實(shí)例分析一、實(shí)例內(nèi)容例如:假設(shè)有兩臺(tái)服務(wù)器:A和B,其中A是主web服務(wù)器,具有域名(20),B服務(wù)器是備份機(jī),其域名為(21)。其中A的web內(nèi)容存放在以下幾個(gè)地方:/www/和/home/web_user1/和/

32、home/web_user2/。我們需要在備份機(jī)B上建立對(duì)這幾個(gè)目錄內(nèi)容的備份=二、配置步驟 1、服務(wù)器配置實(shí)例那么在上創(chuàng)建rsyncd的配置文件/etc/rsyncd.conf,內(nèi)容如下:#下面這幾行是全局參數(shù)uid = nobodygid = nobodyuse chroot = nomax connections = 4pid file = /var/run/rsyncd.pidlock file = /var/run/rsync.locklog file = /var/log/rsyncd.log#下面這些是模塊wwwpath = /www/ignore errorsread

33、 only = truelist = falsehosts allow = 21hosts deny = /32auth users = backupsecrets file = /etc/backserver.pasweb_user1path = /home/web_user1/ignore errorsread only = truelist = falsehosts allow = 21hosts deny = /32uid = web_user1gid = web_user1auth users = backups

34、ecrets file = /etc/backserver.pasweb_user2path = /home/web_user2/ignore errorsread only = truelist = falsehosts allow = 21hosts deny = /32uid = web_user2gid = web_user2auth users = backupsecrets file = /etc/backserver.pas這里定義有四個(gè)三個(gè)模塊,分別對(duì)應(yīng)于三個(gè)需要備份的目錄樹(shù)。這里只允許21備份本機(jī)的數(shù)據(jù),并且需要認(rèn)證。

35、三個(gè)模塊授權(quán)的備份用戶(hù)都為backup,并且用戶(hù)信息保存在文件/etc/backserver.pas中,其內(nèi)容如下:backup:bk_passwd并且該文件只能是root用戶(hù)可讀寫(xiě)的,否則rsyncd啟動(dòng)時(shí)會(huì)出錯(cuò)。這些文件配置完畢以后,就需要在A服務(wù)器上啟動(dòng)rsyncd服務(wù)器:rsync -daemon-2、客戶(hù)命令示例rootlinuxaid /#/usr/local/bin/rsync -vzrtopg -delete -exclude "logs/" -exclude "conf/ssl.*/" -progress backup202.99.11

36、.120:www   /backup/www/    -password-file=/etc/rsync.pass參數(shù)解析如下:(1)v是verbose,z是壓縮,r是recursive,topg都是保持文件原有屬性如屬主、時(shí)間的參數(shù)(2)-progress:指顯示出詳細(xì)的進(jìn)度情況,-delete是指如果服務(wù)器端刪除了這一文件,那么客戶(hù)端也相應(yīng)把文件刪除,保持真正的一致(3)-exclude  "logs/" :表示不對(duì)/www/logs目錄下的文件進(jìn)行備份(4)-exclude "conf/ssl.*/

37、":表示不對(duì)/www/conf/ssl.*/目錄下的文件進(jìn)行備份(5)backup20:www :表示對(duì)該命令是對(duì)服務(wù)器20中的www模塊進(jìn)行備份,backup表示使用backup來(lái)對(duì)該模塊進(jìn)行備份(6)-password-file=/etc/rsync.pass:用來(lái)指定密碼文件,這樣就可以在腳本中使用而無(wú)需交互式地輸入驗(yàn)證密碼了,這里需要注意的是這份密碼文件權(quán)限屬性要設(shè)得只有root可讀(7)這里將備份的內(nèi)容存放在備份機(jī)的/backup/www/目錄下rootlinuxaid /# /usr/local/bin/rsync -vzrto

38、pg -delete -exclude "logs/" -exclude "conf/ssl.*/" -progress backup20:www /backup/www/ -password-file=/etc/rsync.passreceiving file list . done./1785 (100%)1.py4086 (100%)2.py10680 (100%)a0 (100%)ip3956 (100%)./wrote 2900 bytes read 145499 bytes 576.34 bytes/sectotal s

39、ize is 2374927 speedup is 45.34對(duì)其它兩個(gè)模塊操作的命令分別為:/usr/local/bin/rsync -vzrtopg -delete -progress backup20:web_user1 /backup/web_user1/ -password-file=/etc/rsync.pass/usr/local/bin/rsync -vzrtopg -delete -progress backup20:web_user2 /backup/web_user2/ -password-file=/etc/rsync.pas

40、s可以將客戶(hù)命令通過(guò)crontab -e命令來(lái)實(shí)現(xiàn)自動(dòng)備份,如crontab ersync的其它實(shí)例rsync的其它實(shí)例一些示例腳本這里這些腳本都是rsync網(wǎng)站上的例子:1、每隔七天將數(shù)據(jù)往中心服務(wù)器做增量備份#!/bin/sh# This script does personal backups to a rsync backup server. You will end up# with a 7 day rotating incremental backup. The incrementals will go# into subdirectories named after the da

41、y of the week, and the current# full backup goes into a directory called "current"# tridge# directory to backupBDIR=/home/$USER# excludes file - this contains a wildcard pattern per line of files to excludeEXCLUDES=$HOME/cron/excludes# the name of the backup machineBSERVER=owl# your passwo

42、rd on the backup serverexport RSYNC_PASSWORD=XXXXXX#BACKUPDIR=date +%AOPTS="-force -ignore-errors -delete-excluded -exclude-from=$EXCLUDES-delete -backup -backup-dir=/$BACKUPDIR -a"export PATH=$PATH:/bin:/usr/bin:/usr/local/bin# the following line clears the last weeks incremental director

43、y -d $HOME/emptydir | mkdir $HOME/emptydirrsync -delete -a $HOME/emptydir/ $BSERVER:$USER/$BACKUPDIR/rmdir $HOME/emptydir# now the actual transferrsync $OPTS $BDIR $BSERVER:$USER/current2、備份至一個(gè)空閑的硬盤(pán)#!/bin/shexport PATH=/usr/local/bin:/usr/bin:/binLIST="rootfs usr data data2"for d in $LIST;

44、 domount /backup/$drsync -ax -exclude fstab -delete /$d/ /backup/$d/umount /backup/$ddoneDAY=date "+%A"rsync -a -delete /usr/local/apache /data2/backups/$DAYrsync -a -delete /data/solid /data2/backups/$DAY3、對(duì)的cvs樹(shù)進(jìn)行鏡像#!/bin/bashcd /var/www/cvs/vger/PATH=/usr/local/bin:/usr/

45、freeware/bin:/usr/bin:/binRUN=lps x | grep rsync | grep -v grep | wc -lif "$RUN" -gt 0 ; thenecho already runningexit 1firsync -az :cvs/CVSROOT/ChangeLog $HOME/ChangeLogsum1=sum $HOME/ChangeLogsum2=sum /var/www/cvs/vger/CVSROOT/ChangeLogif "$sum1" = "$sum2" ; thenecho nothing to doexit 0firsync -az -delete -force :cvs/ /var/www/cvs/vger/exit 0FAQQ:如何通過(guò)ssh進(jìn)行rsync,而且無(wú)須輸入密碼?A:可以通過(guò)以下幾個(gè)步驟1. 通過(guò)ssh-keygen在server A上建立SSH keys,不要指定密碼,你會(huì)在/.ssh下看到i

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論