遠(yuǎn)程備份簡(jiǎn)單操作手冊(cè)_第1頁
遠(yuǎn)程備份簡(jiǎn)單操作手冊(cè)_第2頁
遠(yuǎn)程備份簡(jiǎn)單操作手冊(cè)_第3頁
遠(yuǎn)程備份簡(jiǎn)單操作手冊(cè)_第4頁
遠(yuǎn)程備份簡(jiǎn)單操作手冊(cè)_第5頁
已閱讀5頁,還剩12頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、遠(yuǎn)程備份簡(jiǎn)單操作 >版本:1.0發(fā)布日期:2010-11-2實(shí)施日期:2010-11-9修訂記錄日期版次描述作者審核批準(zhǔn)2010-11-21.0初版發(fā)布,針對(duì)服務(wù)器版本。SUN2010-11-181.1添加了注意事項(xiàng)SUN目錄修訂記錄21 建立版本庫42 Apache方式下添加用戶53 Apache方式下分組權(quán)限管理74 同步備所需要的命令95具體操作操作流程概括:136遇到的問題與解決方法:147 Subversion同步工具svnsync出錯(cuò):Failed to get lock on destination repos148使用svnsync備份很簡(jiǎn)單,步驟如下:159注意事項(xiàng):1

2、81 建立版本庫1、在Dos命令行方式下,進(jìn)入svn安裝目錄下的bin目錄(如C:Program FilesSubversionbin)下,輸入命令 svnadmin create 路徑+版本庫名,即:SvnadmincreateF:/svnEnter鍵后會(huì)自動(dòng)創(chuàng)建svn文件夾,如下圖所示:2、進(jìn)入C:Program FilesApache GroupApache2bin目錄下(仍然在Dos命令行方式下),輸入svnadmin createF:/svn/svnproject3、在Apache安裝目錄下的conf目錄下,用文本編輯器打開httpd.conf,在httpd.conf文件的最后語句中

3、加入:<Location /svn> dav svn svnparentpath F:svn </Location>如下截圖所示:httpd.conf有黑色的雪花(*)表示此文件正在被修改,提醒每次修改后要記得保存,這樣,凡是在F盤下F:svn目錄下的子目錄, Apache 都交給 Subversion4)將httpd.conf中的Listen 80修改為Listen 8081(須在規(guī)定的范圍內(nèi)可以任意改變端口號(hào))。改為:版本庫建好就要與Apache發(fā)生聯(lián)系了。2 Apache方式下添加用戶1、首先,我們來為SVN配置庫創(chuàng)建第一個(gè)用戶zfq,在命令行窗口中轉(zhuǎn)到Apach

4、ehtpasswd工具所在的目錄(如:C:Program FilesApache GroupApache2bin)下輸入如下命令:Htpasswd -cF:svnsvnprojectconfuser zfq這時(shí),會(huì)提示輸入用戶密碼以及確認(rèn)用戶密碼。注意這里是創(chuàng)建第一個(gè)用戶,所以需要有-c開關(guān)。一定要注意:創(chuàng)建第二個(gè)用戶時(shí),我們就不必輸入 -c 開關(guān)了。如果想要?jiǎng)h除某個(gè)用戶,我們可以使用下列指令:Htpasswd d F:svnsvnprojectconfuser harry2、再在配置文件httpd.conf的最后加入下面的指令以增加權(quán)限:<Location /svn>dav sv

5、n svnparentpath F:svn# how to authenticate a userauthtype basic authname "Resources" authuserfile F:svnsvnprojectconfuser# only authenticated users may access the repositoryRequire valid-user</Location>如截圖所示:3 Apache方式下分組權(quán)限管理1、有時(shí),我們希望能夠?qū)⒍鄠€(gè)開發(fā)人員編為一組,使用組的方式來為項(xiàng)目設(shè)定權(quán)限。比如 projectA 項(xiàng)目只有屬于 gr

6、oupA 的成員才可以存取2、我們對(duì) httpd.conf 中的目錄配置再做一次修改: <Location /svn> dav svn svnparentpath F:svn authtype basic authname "Resources" authuserfile F:svnsvnprojectconfuser authzsvnaccessfile F:svnsvnprojectconfauthz Require valid-user</Location>如下截圖所示:注意:每次修改httpd.conf文件之后,記得保存,并且必須重新啟動(dòng)Ap

7、ache服務(wù)器之后才能生效。3、 可以注意到,這里在F:svnsvnprojectconf目錄下使用了另一個(gè)配置文件authz.conf具體操作步驟如下:1)初始時(shí),先分配一個(gè)管理員,其對(duì)整個(gè)配置庫具有讀寫權(quán)限,如: groupsadmin=sunfurong,zfqsvnproject:/admin=rw*=r2)如下操作:3)單擊【確定】后,如下圖所示:4)輸入相應(yīng)的用戶名和密碼后,單擊【確定】后,會(huì)出現(xiàn)一個(gè)空的配置庫(這個(gè)很重要,必須是空的配置庫才能保證以下操作的順利進(jìn)行。)4 同步備所需要的命令1、下面介紹利用svnsync來同步版本庫,達(dá)到備份版本庫的目的要用到兩個(gè)命令1)svnsy

8、nc init初始化,建立目標(biāo)庫和源庫之間的同步關(guān)系命令格式: svnsync init 目標(biāo)庫URL 源庫URL2) svnsync sync真正的同步命令格式 svnsync sync 目標(biāo)庫URL2、目標(biāo):本次實(shí)現(xiàn)的是版本庫的遠(yuǎn)程自動(dòng)備份,將版本庫備份到另一臺(tái)機(jī)器上假設(shè)我們要同步的源版本庫為 35/svn/svnprojec位于機(jī)器A,具體路徑我們不必理會(huì),因?yàn)槲覀兪褂胔ttp協(xié)議目標(biāo)庫在機(jī)器B,file:/svn/svnproject,這個(gè)為了簡(jiǎn)單和安全,我們使用file:/協(xié)議3、過程:1)創(chuàng)建pre-revprop-change.bat文件:即復(fù)制

9、pre-revprop-change.tmpl ,將其擴(kuò)展名改為pre-revprop-change.bat,并且清空原有的所有內(nèi)容、保存。如下圖所示:·2)修改目標(biāo)庫的腳本pre-revprop-change進(jìn)入F:/svn/svnproject/hooks/cd /svn/svnproject/hooks/打開后末尾字段如下:REPOS="$1" REV="$2" USER="$3" PROPNAME="$4" ACTION="$5" if "$ACTION"

10、= "M" -a "$PROPNAME" = "svn:log" ; then exit 0; fi echo "Changing revision properties other than svn:log is prohibited" >&2 exit 1,原腳本的意思是如果修改的是svn:log屬性,將允許修改,返回0;否則,不允許,返回1,我們要將它改為允許修改所有的屬性,在腳本中直接返回0,新的腳本如下:exit 1àexit 0即可。4、初始化在機(jī)器B上輸入命令:svnsync

11、init file:/F:/svn/svnproject (有空格)35:8081/svn/svnproject會(huì)提示輸入用戶名和密碼,這里提供的用戶名和密碼是可以完全讀取于35:8081/svn/svnproject的計(jì)算機(jī)密碼,用戶名和密碼,,即如下圖:5、同步1) svnsync syncfile:/F:/svn/svnproject 依然會(huì)提示輸入用戶名和密碼,不過,你可以在這個(gè)命令之后加上 username 、password參數(shù),在目錄:C:Program FilesSubversionbin下輸入:svnsync

12、 syncfile:/F:/svn/svnproject -username username -password password如下圖所示: 如上截圖所示,會(huì)一直走下去直至目標(biāo)庫與源庫的版本號(hào)完全一致為止。2) 同步結(jié)束后,如下圖所示:到這一步時(shí),SVN遠(yuǎn)程備份就已經(jīng)完成了,如果版本庫較大時(shí),備份的時(shí)間可能會(huì)有點(diǎn)慢,要有耐心,用一天也是有可能的,你可以打開目標(biāo)庫看看,和源庫是一樣的。注意:應(yīng)該定期的一周或者兩周打開命令窗口輸入:svnsync syncfile:/F:/svn/svnproject已達(dá)到定期同步的目的。5具體操作操作流程概括:· 1、在要備份的機(jī)器上建立

13、版本庫:svnadmin create svn· 2、進(jìn)入hooks目錄:cd svn/svnproject/hooks/ · 3、創(chuàng)建pre-revprop-change.bat文件:復(fù)制pre-revprop-change.tmpl ,將擴(kuò)展名改為pre-revprop-change.bat,并且清空原有的所有內(nèi)容,保存。· 4、修改文件: pre-revprop-change文件,為 echo “Changing revision properties other than svn:log is prohibited” >&2exit 0(1修

14、改為0即可) · 6、同步初步:svnsync init file:/F:/svn/svnproject 35:8081/svn/svnprojectsvnsync: Destination repository is already synchronizing from svn:/.1 · 7、實(shí)現(xiàn)同步:svnsync syncfile:/F:/svn/svnproject username username password password1 6遇到的問題與解決方法:Svnsync:Cannotinitialize(初始化)arepo

15、sitorywithcontentinit :當(dāng)版本庫有內(nèi)容時(shí)不能初始化如果反復(fù)操作都是同樣錯(cuò)誤的話,很可能是你版本庫有內(nèi)容,需要你版本庫svn,重新按照svn服務(wù)器的安裝手冊(cè)里SVN與apache的集成來重新新建版本庫。7同步工具svnsync出錯(cuò)常見問題一:在使用svnsync同步兩個(gè)版本庫時(shí)經(jīng)常出現(xiàn)如下的錯(cuò)誤,并自動(dòng)中斷了同步操作:Copied properties for revision 461.svnsync: Server sent unexpected return value (502 Bad Gateway) in response to PROPFIND request

16、for /svn/!svn/vcc/default當(dāng)再次運(yùn)行svnsync syncfile:/F:/svn/svnproject時(shí),有可能出現(xiàn)“Failed to get lock on destination repos”的錯(cuò)誤信息,使同步操作無法繼續(xù)進(jìn)行:F:Subversion> svnsync syncfile:/F:/svn/svnprojectFailed to get lock on destination repos, currently held by firehack:963c0909-45ad-644f-b383-7e35d445028fFailed to get

17、 lock on destination repos, currently held by firehack:963c0909-45ad-644f-b383-7e35d445028fsvnsync: Couldnt get lock on destination repos after 10 attempts解決辦法:刪除SVN倉庫修訂號(hào)0  svn:sync-lock的保護(hù).svn propdel svn:sync-lock -revprop -r 0 file:/F:/svn/svnproject常見問題二:一個(gè)意外情況:我在測(cè)試中,發(fā)現(xiàn)如下錯(cuò)誤 Copied propertie

18、s for revision 738.Committed revision 739.Copied properties for revision 739.Committed revision 740.Copied properties for revision 740.Committed revision 741.Copied properties for revision 741.svnsync: REPORT 請(qǐng)求“10:8081/svn/svnproject”失敗svnsync: REPORT 的結(jié)果”10:8081/s

19、vn/svnproject”: 200 OK (10:8081/svn/svnproject)解決辦法:打開備份的配置庫,將其中空的文件夾進(jìn)行刪除或是新建,對(duì)最后的版本進(jìn)行覆蓋即可。產(chǎn)生原因:是對(duì)某個(gè)操作的無法識(shí)別導(dǎo)致,需要知道的是與Apache集成的配置庫是不支持中文格式,包括空白字符、空格,所以配置庫極為脆弱,需要好好維護(hù),到后面SVN雖然有升級(jí),但是這個(gè)Bug仍然存在,也許到后面的學(xué)習(xí)中,我會(huì)有辦法徹底解決。8使用svnsync備份步驟如下:一、在備份機(jī)上創(chuàng)建一個(gè)空庫:svnadmin create svn二、更改該庫的鉤子腳本pre

20、-revprop-change(因?yàn)閟vnsync要改這個(gè)庫的屬性,也就是要將源庫的屬性備份到這個(gè)庫,所以要啟用這個(gè)腳本):    cd F:/svn/svnproject/hooks;   cp pre-revprop-change.tmpl pre-revprop-change;   chmod 755 pre-revprop-change;   vi pre-revprop-change;   將該腳本后面的三句注釋掉,

21、或者干脆將它弄成一個(gè)空文件。 三、初始化,此時(shí)還沒有備份任何數(shù)據(jù):  svnsync init file:/F:/svn/svnproject 35:8081/svn/svnproject  語法是:svnsync init 你剛創(chuàng)建的庫url 源庫url   注意本地url是三個(gè)斜杠的:/ 四、開始備份:   svnsync sync file:/F:/svn/svnproject這時(shí)就一個(gè)個(gè)版本進(jìn)行備份了。附

22、錄:可能的報(bào)錯(cuò)一: Failed to get lock on destination repos, currently held by ':0c424c20-2e3b-0410-bd34-7fdd53c25d02' Failed to get lock on destination repos, currently held by ':0c424c20-2e3b-0410

23、-bd34-7fdd53c25d02' Failed to get lock on destination repos, currently held by ':0c424c20-2e3b-0410-bd34-7fdd53c25d02' Failed to get lock on destination repos, currently held by ':0c42

24、4c20-2e3b-0410-bd34-7fdd53c25d02' Failed to get lock on destination repos, currently held by ':0c424c20-2e3b-0410-bd34-7fdd53c25d02' Failed to get lock on destination repos, currently held by&#

25、160;':0c424c20-2e3b-0410-bd34-7fdd53c25d02' Failed to get lock on destination repos, currently held by ':0c424c20-2e3b-0410-bd34-7fdd53c25d02' Failed to get lock on destination repos, currently held by ':0c424c20-2e3b-0410-bd34-7fdd53c25d02' Failed to get lock on destination repos, currently held by ':0c424c20-2e3b-0410-bd34-7fdd53

溫馨提示

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

評(píng)論

0/150

提交評(píng)論