winsw的学习


WinSW是一个可用于包装和管理作为Windows服务的自定义进程的工具,可以对windows中的服务程序进行管理(注册、卸载、启动、停止、重启等操作),其本质上就是一个可执行的二进制文件,运行于windows系统下。

WinSW对系统服务的管理功能和在windows任务管理器中的操作是一样的;从2.x开始WinSW 托管于github平台;在下载完成解压后,其可执行的操作命令如下所示:

  • install将服务安装到Windows服务控制器中;
  • uninstall从已安装的Windows服务控制器中卸载服务;
  • start启动已经安装的服务;
  • stop停止已经启动的服务;
  • restart重新启动服务;如果该服务当前未运行,则此命令会将服务启动;
  • status检查服务的当前状态;

命令的运行格式

命令需要在WinSW.exe 所在的目录下才能执行,由于WinSW初始的名称是WinSW.exe,所以要在命令前加上进程名称,比如:安装服务的完整命令就是:winsw install;(后缀.exe是可以省略的)

支持修改名称

WinSW.exe 支持修改名称,比如在nginx中,其名称可修改为:nginx-service.exe; 在php中,名称则可修改为php-cgi-service.exe;

xml 配置文件

WinSW 的服务管理的配置功能需要xml文件来完成,每个进程的xml文件的名称需要和WinSW 进程的名称一样;如果WinSW.exe 修改成了nginx-service.exe,对应的xml文件名称就要修改为nginx-service.xml。

WinSW 提供了初始的xml文件示例,有mini版和完整版,名称分别是sample-minimal.xml和sample-allOptions.xml;WinSW xml的示例文件如下:

「PHP」以nginx、php-cgi为例,把nginx、php-cgi安装为Windows系统服务

xml 配置条目

  • id 用于标识Windows内服务的ID,这个值在系统中安装的所有服务中必须是唯一的,并且应完全由字母数字字符组成。
  • name服务的显示名称,可以包含空格和其他字符,不过名称不宜太长。
  • description服务的介绍描述,它会将显示在Windows服务管理器中。
  • executable指定要启动的可执行文件,文件路径可以是绝对路径,也可以只指定可执行文件名称并从中搜索PATH
  • startmode该元素指定Windows服务的启动模式,默认值是Automatic,它可以是以下值之一Boot,System,Automatic或Manual。
  • delayedAutoStart如果Automatic定义了启动模式,则此布尔选项启用延迟启动模式。请注意,此启动模式将不适用于早于Windows 7和Windows Server 2008的旧Windows版本。
  • depend指定此服务依赖的其他服务的ID,可以使用多个元素来指定多个依赖项。比如:EventlogW32Time
  • logging此项是可选的,可用于设置日志路径, ​比如:日志路径
  • argument指定要传递给可执行文件的参数,WinSW会在必要时用引号将每个引号引起来,因此请勿在引号中加引号,以避免产生双引号。
  • stopargument/stopexecutable用于指定停止参数和停止时执行的操作。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值