隨筆-6  評論-38  文章-40  trackbacks-0

          以前的svnserve要想成為windows服務(wù),必須依賴于svnservice或其他工具。從Subversion1.4開始,Subversion本身就集成Windows服務(wù)的工具。

          1,安裝svnservice

          在Windows NT中(包括Windows XP, Windows 2000, Windows 2003 Server)本身包含了一個(gè)安裝服務(wù)的工具,叫做"Service Control",也就是sc.exe。

          例如我的Subversion安裝在"D:\Subversion",版本庫在"D:\svnroot",而我希望對應(yīng)的Subversion服務(wù)名為svnservice,安裝這個(gè)svn服務(wù)的命令就可以這樣寫:

          ????? sc create svnservice
          ????? binpath= "D:\Subversion\bin\svnserve.exe --service -r D:\svnroot"
          ????? displayname= "SVNService"
          ????? depend= Tcpip
          ?????
          請注意,因?yàn)楸阌诓炜矗厦娴拿罘譃槎嘈校趯?shí)際執(zhí)行時(shí)應(yīng)該在一行里。另外,在以前啟動(dòng)svnserve時(shí)會(huì)使用"-d"選項(xiàng),也就是守護(hù)進(jìn)程模式,在這里不能使用,會(huì)導(dǎo)致服務(wù)無法啟動(dòng)。同樣,"-i"和"-t"選項(xiàng)也不能使用。

          在命令行窗口執(zhí)行完這個(gè)命令之后,服務(wù)還沒有啟動(dòng),你可以繼續(xù)運(yùn)行"net start svnservice"啟動(dòng)這個(gè)服務(wù),然后使用"net stop svnservice"停止服務(wù)。

          另外還有兩點(diǎn)需要小心處理。首先,如果路徑中包括空格,一定要用“\”處理“"”號,例如上面的例子中如果svnserve.exe在“c:\program files\subversion\”中,則命令應(yīng)該寫為“binpath= "\"c:\program files\subversion\bin\svnserve.exe\"”(“”中的內(nèi)容),整個(gè)命令如下,紅色部分是改變部分:

          ????? sc create svnservice
          ????? binpath= "\"D:\program files\Subversion\bin\svnserve.exe\" --service -r D:\svnroot"
          ????? displayname= "SVNService"
          ????? depend= Tcpip
          ?????
          其次,sc對選項(xiàng)的格式還有要求,例如“depend= Tcpip”不能寫為“depend = Tcpip”或“depend=Tcpip”,也就是“=”前不能有空各,而后面必須有空格。


          2,刪除服務(wù)

          如果服務(wù)安裝的有問題,你可能需要?jiǎng)h除服務(wù)。要?jiǎng)h除前面添加的服務(wù),只需要運(yùn)行"sc delete svnservice","svnservice"就是我們創(chuàng)建服務(wù)時(shí)使用的名字。


          3,配置服務(wù)是自動(dòng)啟動(dòng)

          默認(rèn)情況下安裝的服務(wù)不會(huì)隨Windows的啟動(dòng)而啟動(dòng),為了使svn服務(wù)能夠隨Windows啟動(dòng)而啟動(dòng),需要修改一下"sc create"命令(首先要?jiǎng)h除),增加"start= auto"選項(xiàng):

          ????? sc create svnservice
          ????? binpath= "D:\Subversion\bin\svnserve.exe --service -r D:\svnroot"
          ????? displayname= "SVNService"
          ????? depend= Tcpip
          ????? start= auto
          ?????
          當(dāng)然你也可以使用圖形化的工具修改服務(wù)的屬性,你可以在“開始->運(yùn)行...”中執(zhí)行"services.msc",然后在界面中修改。


          鏈接:

          關(guān)于sc安裝svn服務(wù)的詳細(xì)信息,可以看看這篇文章:
          http://svn.collab.net/repos/svn/tags/1.4.0/notes/windows-service.txt

          posted on 2006-12-02 20:33 一手的小窩窩 閱讀(2135) 評論(1)  編輯  收藏 所屬分類: OTHER

          評論:
          # re: Subversion安裝成service 2009-11-13 13:47 | clh
          想問問 我運(yùn)行了這個(gè)
          sc delete svnservic
          之后我又想在創(chuàng)建它
          但是系統(tǒng)不讓我創(chuàng)建怎么解決啊
          我的郵箱 clhed@163.com
            回復(fù)  更多評論
            
          主站蜘蛛池模板: 咸丰县| 华亭县| 高雄市| 柳林县| 林西县| 永兴县| 方正县| 太原市| 怀柔区| 平武县| 镇江市| 高雄县| 丰顺县| 铁力市| 彭阳县| 平原县| 阆中市| 昌吉市| 东方市| 榆中县| 新竹县| 大关县| 绥江县| 仪征市| 肥西县| 昌宁县| 友谊县| 昌平区| 修武县| 永嘉县| 甘洛县| 汝城县| 漠河县| 平乐县| 柳河县| 普格县| 芦山县| 眉山市| 宁陕县| 盘山县| 耒阳市|