NSSM是一个服务封装程序,它可以将普通exe程序封装成服务,使之像windows服务一样运行。同类型的工具还有微软自己的srvany,不过nssm更加简单易用,并且功能强大。它的特点如下:
http://nssm.cc
nssm install {服务名称}
,即注册服务的名称。注册服务弹出如下NSSM界面。 属性 - 恢复
其它界面的是高级参数的配置,可以根据需要自行选择。
参数填完后执行"install service"按钮即可将服务安装到系统,可以使用系统的服务管理工具查看了。
当然,如果要自动化安装,可以直接带上程序路径: nssm install <servicename> <program> [<arguments>]
NSSM本身win7及以上的系统基本都是支持的,我测试过win7,2008,2016系统,都是没有问题的,如果安装失败,请首先检查是否装了某国产管家或国产杀毒软件。
安装完成后,服务还没有启动,需要通过下面的服务管理的命令启动服务。
服务管理主要有启动、停止和重启,其命令如下:
nssm start <servicename> nssm stop <servicename> nssm restart <servicename>
当然,也可以使用系统自带的服务管理器操作和使用系统的命令。
NSSM安装的服务修改起来非常方便,命令如下:
nssm edit <servicename>
会自动启动操作界面,直接更改即可。
服务删除可以使用如下命令之一:
nssm remove <servicename> nssm remove <servicename> confirm
功能没有大的区别,后面的命令是自动确认的,没有交互界面。
服务自动化需要使用更多的命令行,具体参看官方文档: https://nssm.cc/commands
如下是一个官方安装Jenkins服务的示例:
nssm install Jenkins %PROGRAMFILES%/Java/jre7/bin/java.exe nssm set Jenkins AppParameters -jar slave.jar -jnlpUrl https://jenkins/computer/%COMPUTERNAME%/slave-agent.jnlp -secret redacted nssm set Jenkins AppDirectory C:/Jenkins nssm set Jenkins AppStdout C:/Jenkins/jenkins.log nssm set Jenkins AppStderr C:/Jenkins/jenkins.log nssm set Jenkins AppStopMethodSkip 6 nssm set Jenkins AppStopMethodConsole 1000 nssm set Jenkins AppThrottle 5000 nssm start Jenkins
最后更新于 2019-05-23 15:22:35 并被添加「windows服务 nssm」标签,已有 2 位童鞋阅读过。