Liangliang Nan (南亮亮)分享 http://blog.sciencenet.cn/u/LiangliangNan 细推物理须行乐,何用浮名绊此身

博文

让svn服务随WINDOWS自动启动

已有 5981 次阅读 2011-9-28 09:14 |系统分类:科研笔记|关键词:学者| windows, 自动启动

昨天下午搭好的SVN,今早竟然发现不能随机启动。下面的方法可以解决:
 
以前的svnserve要想成为windows服务,必须依赖于svnservice或其他工具。从Subversion1.4开始,Subversion本身就集成了Windows服务的工具。
 
将svn设置成为系统服务自动运行的方法:

在Windows NT中(包括Windows XP, Windows 2000, Windows 2003 Server,Windows7)本身包含了一个安装服务的工具,叫做"Service Control",也就是sc.exe。

例如我的Subversion安装在"C:subversion",版本库在"D:svn_repository",而我希望对应的Subversion服务名为svnservice,安装这个svn服务的命令就可以这样写:

      sc create svnservice
      binpath= "C:subversionbinsvnserve.exe --service -r D:svn_repository"
      displayname= "SVNService" 
      depend= Tcpip
      start= auto

上面的命令中,如果缺少“start= auto”则安装的服务不会随Windows的启动而启动。如果服务安装的有问题,你可能需要删除服务。要删除前面添加的服务,只需要运行"sc delete svnservice","svnservice"就是我们创建服务时使用的名字。
请注意,因为便于察看,上面的命令分为多行,但在实际执行时应该写在一行里。另外,在以前启动svnserve时会使用"-d"选项,也就是守护进程模式,在这里不能使用,会导致服务无法启动。同样,"-i"和"-t"选项也不能使用。(注意:cmd命令运行时要“run as administrator”)

在命令行窗口执行完这个命令之后,服务还没有启动,你可以继续运行
 
        net start svnservice
 
启动这个服务(命令“net stop svnservice”可以停止服务)。

另外还有两点需要小心处理。首先,如果路径中包括空格,一定要用“”处理“"”号,例如上面的例子中如果svnserve.exe在“C:Program Filessubversion”中,则整个命令如下:

      sc create svnservice
      binpath= ""C:Program FilesSubversionbinsvnserve.exe" --service -r D:svn_repository"
      displayname= "SVNService"
      depend= Tcpip
      start= auto

     
其次,sc对选项的格式还有要求,例如“depend= Tcpip”不能写为“depend = Tcpip”或“depend=Tcpip”,也就是“=”前不能有空各,而后面必须有空格


https://m.sciencenet.cn/blog-562235-491255.html

上一篇:轻松几步搭建SVN服务器
下一篇:Boost Graph Library 快速入门

0

该博文允许注册用户评论 请点击登录 评论 (0 个评论)

数据加载中...

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-5-20 19:13

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部