NSSM介绍
NSSM
是一个服务封装程序,它可以将普通exe程序封装成服务,使之像windows服务一样运行。同类型的工具还有微软自己的srvany,不过
nssm
更加简单易用,并且功能强大。它的特点如下:
-
支持普通exe程序(控制台程序或者带界面的Windows程序都可以)
-
安装简单,修改方便
-
可以重定向输出(并且支持Rotation)
-
可以自动守护封装了的服务,程序挂掉了后可以自动重启
-
可以自定义环境变量
NSSM官网
http://
nssm
.cc
NSSM使用
-
下载最新版本
nssm
,也可以下载最新release版本;
或者从
https://download.csdn.net/download/fly910905/13632044
下载 (nssm-2.24-103版本,为笔者文中使用的版本)
-
根据自己的平台,将32/64位
nssm
.exe文件解压至任意文件夹。
-
cmd定位至
nssm
.exe所在目录。
-
输入
nssm
install {服务名称}
,即注册服务的名称。注册服务弹出如下
NSSM
界面。
-
-
Application标签设置:
-
Application Path: 选择系统安装的exe(cmd也可以)。
-
Startup directory: 选择exe项目的根目录。
-
Arguments: 输入启动参数
-
上述步骤操作完成,即可点击Install service来注册服务。我们在系统的服务中即可找到刚刚注册的服务。
-
在系统服务中找到刚刚注册的服务,右键
属性 - 恢复
即可设置此服务挂掉重启等内容。
NSSM服务管理
1. 启动、停止和重启
服务管理主要有启动、停止和重启,其命令如下:
-
启动服务:
nssm
start <servicename>
-
停止服务:
nssm
stop <servicename>
-
重启服务:
nssm
restart <servicename>
当然,也可以使用系统自带的服务管理器操作和使用系统的命令。
2. 修改参数
NSSM
安装的服务修改起来非常方便,命令如下:
nssm
edit <servicename>
会自动启动操作界面,直接更改即可。
3. 服务删除
服务删除可以使用如下命令之一:
-
nssm
remove <servicename>
-
nssm
remove <servicename> confirm
功能没有大的区别,后面的命令是自动确认的,没有交互界面。
4. 命令行
服务自动化需要使用更多的命令行,
具体参看官方文档:
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
NSSM服务异常
1. windows不能在本地计算机启动 参考特定服务错误代码 3
这是因为在使用
nssm
install {服务名称} 时,
并没有使用
以“以管理员身份运行” cmd窗口
将服务删除(
nssm
remove <servicename>
)
再使用cmd.exe 右键“以管理员身份运行” ,执行
nssm
install {服务名称} 即可
其次,检查路径前面是否有空白字符
2. Unexpected status SERVICE_PAUSED in response to START control.
同异常--1. windows不能在本地计算机启动 参考特定服务错误代码 3
参考链接:
http://www.nssm.cc/
介绍NSSM是一个服务封装程序,它可以将普通exe程序封装成服务,使之像windows服务一样运行。同类型的工具还有微软自己的srvany,不过nssm更加简单易用,并且功能强大。它的特点如下:支持普通exe程序(控制台程序或者带界面的Windows程序都可以) 安装简单,修改方便 可以重定向输出(并且支持Rotation) 可以自动守护封装了的服务,程序挂掉了后可以自动重启 可以自定义环境变量官网http://nssm.cc使用下载最新版本nssm,也可以下载最新releas
1.安装
服务
:n
ssm
install
服务
名称
2.删除
服务
:n
ssm
remove
服务
名称
3.删除
服务
确定:n
ssm
remove
服务
名称 confirm
4.修改
服务
(显示界面修改):n
ssm
edit
服务
名称
5.启动
服务
:n
ssm
start
服务
名称
6.停止
服务
:n
ssm
stop
服务
名名称
7.停止
服务
:n
ssm
stop
服务
名称
N
SSM
是一个
服务
封装
程序,它可以将普通
exe
程序
封装
成
服务
,使之像
windows
服务
一样运行。同类型的工具还有微软自己的srvany,不过n
ssm
更加简单易用,并且功能强大。它的特点如下:
支持普通
exe
程序(控制台程序或者带界面的
Windows
程序都可以)
安装简单,修改方便
可以重定向输出(并且支持Rotation)
可以自动守护
封装
了的
服务
,程序挂掉了后可以自动重启
可以自定义环境变量
这里面的每一个功能都非常实用,使用N
SSM
来
封装
服务
可以大大简化我们的开发流程了。
N
SSM
是一个
服务
封装
程序,它可以将普通
exe
程序
封装
成
服务
,使之像
windows
服务
一样运行。同类型的工具还有微软自己的srvany,不过n
ssm
更加简单易用,并且功能强大。它的特点如下:
支持普通
exe
程序(控制台程序或者带界面的
Windows
程序都可以)
安装简单,修改方便
可以重定向输出(并且支持Rotation)
可以自动守护
封装
了的
服务
,程序挂掉了后可以自动重启
可以自定义环境变量
http://n
ssm
.cc
下载最新版本n
ssm
,也可以下载最新releas
将.bat .
cmd
等加入到C盘的startUp文件夹实现自启动的缺点是如果设置了用户登录,需要输入开机密码后才能实现运行。下面的方法比较好
2,准备好两个小程序instsrv.
exe
,srvany.
exe
,自取
链接: https://pan.baidu.com/s/10DB4vSEb4HAQT5pnsz8zpg 提取码: ppc5
3,将这两个程序拷贝到C:\
windows
\system32\和C:\
Windows
\SysWOW64
4,打开
cmd
命令窗口,输入 instsrv servern
问题背景:近日生产环境中的tomcat
服务
崩溃,导致
系统
不可用。于是提出了使用n
ssm
来管理tomcat
服务
,即n
ssm
服务
为tomcat的守护线程,当tomcat
服务
崩溃停止之后,n
ssm
服务
会马上重启tomcat
服务
,当然这个重启的时间可以设置。
操作步骤:
1.目前生产上使用的是解压版的tomcat
服务
,所以先要注册tomcat
服务
。使用
cmd
命令进入bin目录,然后输入以下命令:service.bat install serviceName. 其中serviceName可以不用写,那么就用的默认
网上通用的OpenSCManager->OpenService->StartService这种启动方式是正确的,但是很多人遇到开启
服务
时出现1053错误,下面来分析与解决
官网对于StartServiceW的描述(我程序里用的宽字符版本)
https://docs.microsoft.com/zh-cn/
windows
/win32/api/winsvc/nf-winsvc-star...
修改conf目录下的httpd.conf文件的Define SRVROOT将路径改为绝对路径,
例如:Define SRVROOT "D:\Apache\httpd-2.4.34-o102o-x64-vc14\Apache24"
不使用 minwinsvc 构建标签并通过 N
SSM
注册为
服务
。
在注册成为
服务
之前,需要确保给予 Gogs 二进制相应目录的读写权限,包括存放仓库的根目录([repository] ROOT)。
修改 C:\Gogs\custom\conf\app.ini 文件的相应信息:
在
Windows
下安装 InfluxDB 可以按照以下步骤进行:
1. 下载 InfluxDB 的
Windows
安装包,可以从官网下载:https://portal.influxdata.com/downloads/
2. 解压安装包,将其中的 influxd.
exe
和 influx.
exe
文件复制到一个目录下,例如 C:\influxdb。
3. 打开命令行窗口,进入到 C:\influxdb 目录下,执行以下命令启动 InfluxDB:
influxd.
exe
4. 执行以下命令启动 InfluxDB 的客户端:
influx.
exe
5. 在客户端中可以执行 InfluxDB 的命令,例如创建数据库、插入数据等。
6. 如果需要将 InfluxDB 作为
Windows
服务
运行,可以使用 n
ssm
工具进行安装,具体步骤可以参考官方文档:https://docs.influxdata.com/influxdb/v1.8/administration/install/#installing-influxdb-as-a-
windows
-service