Windows后台服务 NSSM使用说明

9 min read

NSSM(Non-Sucking Service Manager)是一个用于将任何可执行文件(应用程序、脚本等)转换为Windows后台服务的工具。NSSM可以确保应用程序在系统启动后自动启动,并在出现任何故障时自动重启。

以下是使用NSSM的详细说明:

  1. 下载和安装NSSM:

    • 访问NSSM的官方GitHub页面(https://github.com/nssm-windows/nssm)。
    • 在页面的右侧,找到并点击“Releases”链接。
    • 下载最新版本的NSSM安装程序(通常是一个zip文件)。
    • 解压zip文件,并将其中的nssm.exe文件复制到一个方便访问的位置。
  2. 创建后台服务:

    • 打开命令提示符(管理员模式)。
    • 使用cd命令导航到存放nssm.exe的路径。
    • 运行以下命令创建一个新的后台服务:
      nssm install ServiceName "Path\to\executable" "arguments"
      
      • ServiceName:指定服务的名称。
      • Path\to\executable:指定要作为服务运行的可执行文件的路径。
      • arguments:可选参数,如果可执行文件需要传入参数,则在此处指定。
  3. 配置后台服务:

    • 在NSSM安装目录中找到刚创建的后台服务目录(通常位于C:\nssm\serviceName)。
    • 在该目录中,找到一个名为"Application"的文件,用文本编辑器打开。
    • 在文件中,可以配置以下选项:
      • Path:指定可执行文件的路径。
      • Startup directory:指定可执行文件的启动目录。
      • Arguments:指定可执行文件的命令行参数。
      • Environment(包含多个键值对):指定服务的环境变量。
      • Dependencies(包含多个服务名称):指定服务的依赖项。
      • AppRotate:指定日志文件的名称和旋转规则(如果需要)。
      • 将所需的选项进行配置后,保存并关闭文件。
  4. 启动和管理后台服务:

    • 在命令提示符中,运行以下命令启动服务:
      nssm start ServiceName
      
    • 运行以下命令停止服务:
      nssm stop ServiceName
      
    • 运行以下命令删除服务:
      nssm remove ServiceName confirm
      
  5. 其他NSSM命令:

    • 查询服务状态: nssm status ServiceName
    • 查看服务日志: nssm getlog ServiceName
    • 修改服务配置: nssm edit ServiceName
    • 更多命令及选项,请参考NSSM的官方文档。

通过以上步骤,您可以使用NSSM将任何可执行文件转换为Windows后台服务,并使用NSSM管理和控制该服务。