NSSM

介绍

NSSM是一个服务封装程序,它可以将普通exe程序封装成服务,使之像windows服务一样运行。同类型的工具还有微软自己的srvany,不过nssm更加简单易用,并且功能强大。它的特点如下:

  1. 支持普通exe程序(控制台程序或者带界面的Windows程序都可以)
  2. 安装简单,修改方便
  3. 可以重定向输出(并且支持Rotation)
  4. 可以自动守护封装了的服务,程序挂掉了后可以自动重启
  5. 可以自定义环境变量

官网

http://nssm.cc

使用

1.下载最新版本nssm,也可以下载最新release版本;

2.根据自己的平台,将32/64位nssm.exe文件解压至任意文件夹。

3.cmd定位至nssm.exe所在目录。

4.输入 nssm install {服务名称},即注册服务的名称。注册服务弹出如下NSSM界面

5.Application标签设置:

  • Application Path: 选择系统安装的exe。
  • Startup directory: 选择exe项目的根目录。
  • Arguments: 输入启动参数
  • 选择Application Path后,Startup directory会自动加载,Server name也会自动加载

6.Details可设置服务的显示名称和描述信息,以及服务启动类型(自动,自动延迟启动,手动,禁用)

7.Log on可设置登录身份

8.Exit actions当服务失败时可自动重新启动服务

9.I/O将命令行的所有文本输出记录到文件中

10.File rotation可设置记录文件的大小,避免同一个日志文件过大

11.Environment设置此服务需要的环境变量

点击Install service即完成服务安装(其他地方可以不设置,第5步骤设置完成后,即可点击Install service完成服务安装)。

12.完成安装后,即可在系统服务中查看

服务管理

服务管理主要有启动、停止和重启,其命令如下:

  • 启动服务:

    nssm start <servicename>

  • 停止服务:

    nssm stop <servicename>

  • 重启服务:

    nssm restart <servicename>

当然,也可以使用系统自带的服务管理器操作和使用系统的命令(如上图点击启动等方式)。

NSSM安装的服务修改起来非常方便,命令如下:

nssm edit <servicename>

会自动启动操作界面,直接更改即可。

服务删除

服务删除可以使用如下命令之一:

  • nssm remove <servicename>
  • nssm remove <servicename> confirm

功能没有大的区别,后面的命令是自动确认的,没有交互界面。

直接使用cmd删除服务

sc delete 服务名
posted @ 2024-07-04 23:09  Jancychen  阅读(22)  评论(0)    收藏  举报