将svn服务端注册为windows服务,主要是采用sc命令
打开cmd命令窗口,输入
sc create svnserve binpath= "\"D:\Program Files\Subversion\bin\svnserve.exe\" --service --root D:\svncode" displayname= "Subversion" depend= tcpip start= auto
注意,binpath= "\"D:\Program Files\Subversion\bin\svnserve.exe\" --service --root D:\svncode"
,指明绝对路径的svnserve.exe,并且附带了3个参数--service
(运行方式),--root
(运行的权限),D:\svncode
(仓库路径)
启动svn服务
net start Subversion
注意,服务名为创建服务时候设置的显示名称(displayname),
所以,启动svn的命令输入的服务名应为Subversion而不是svnserve。通常情况下,可以设置成一样的,避免输入错误。
sc命令的语法
sc <server> [command] [service name] [Optionname= Optionvalue]
下面介绍各种参数。
<server>
可选择:可以使用双斜线,如\\myserver,也可以是\\192.168.1.223来操作远程计算机。如果在本地计算机上操作
就不用添加任何参数。
[command]
下面列出SC可以使用的命令。
config----改变一个服务的配置。(长久的)
continue--对一个服务送出一个继续控制的要求。
control----对一个服务送出一个控制。
create----创建一个服务。(增加到注册表中)
delete----删除一个服务。(从注册表中删除)
EnumDepend--列举服务的从属关系。
GetDisplayName--获得一个服务的显示名称。
GetKeyName--获得一个服务的服务键名。
interrogate--对一个服务送出一个询问控制要求。
pause----对一个服务送出一个暂停控制要求。
qc----询问一个服务的配置。
query----询问一个服务的状态,也可以列举服务的状态类型。
start----启动一个服务。
stop----对一个服务送出一个停止的要求。
[service name]
在注册表中为service key制定的名称。注意这个名称是不同于显示名称的(这个名称可以用net start和服务控 制面板看到),而SC是使用服务键名来鉴别服务的。
提示:当你键入SC而不带任何参数时,SC.exe会显示帮助信息和可用的命令。当你键入SC紧跟着命令名称时,你可以得 到一个有关这个命令的详细列表。比如,键入sc create可以得到和create有关的列表。
SC create
打开cmd,输入
C:\Users\Administrator>sc create
控制台会显示详细用法
描述:
在注册表和服务数据库中创建服务项。
用法:
sc <server> create [service name] [binPath= ] <option1> <option2>...
选项:
注意: 选项名称包括等号。
等号和值之间需要一个空格。
type= <own|share|interact|kernel|filesys|rec>
(默认 = own)
关于建立服务的类型
start= <boot|system|auto|demand|disabled|delayed-auto>
(默认 = demand)
关于启动服务的类型
error= <normal|severe|critical|ignore>
(默认 = normal)
当服务在导入失败错误的严重性
binPath= <BinaryPathName>
group= <LoadOrderGroup>
这个服务属于的组
tag= <yes|no>
如果这个字符串被设置为yes,sc可以从CreateService call中得到一个tagId。然而,SC并不显示这个标签,所
以使用这个没有多少意义。默认是no
depend= <依存关系(以 / (斜杠) 分隔)>
在这个服务启动前必须启动的服务的名称或者是组。
obj= <AccountName|ObjectName>
(默认 = LocalSystem)
账号运行使用的名称,也可以说是登陆身份。
DisplayName= <显示名称>
一个为在用户界面程序中鉴别各个服务使用的字符串。
password= <密码>
一个密码,如果一个不同于localsystem的账号使用时需要使用这个。
net命令
通常情况下,都是用net命令来进行启动或者是停止服务的操作,不使用sc命令来操作。
列出系统中正在运行的服务
net start
启动名为”Subversion”的一个服务
net start Subversion
停止”Subversion”服务
net start Subversion