NSSM是一款功能強(qiáng)大的Windows服務(wù)安裝工具,它可以把普通 exe 程序 或 Java程序 或 Nodejs 項(xiàng)目封裝成服務(wù),像 windows 服務(wù)一樣運(yùn)行。同類型的工具還有微軟自己的 srvany,不過 NSSM 更加簡單易用,并且功能強(qiáng)大。使用NSSM安裝服務(wù)相比簡單的啟動(dòng)項(xiàng)來的更加穩(wěn)固。
NSSM特點(diǎn)如下:
- 支持普通 exe 程序(控制臺(tái)程序或者帶界面的 Windows 程序都可以)
- 安裝簡單,修改方便
- 可以重定向輸出(并且支持 Rotation)
- 可以自動(dòng)守護(hù)封裝了的服務(wù),程序掛掉了后可以自動(dòng)重啟
- 可以自定義環(huán)境變量
NSSM用法
不需要“安裝” nssm。 只需將它放在系統(tǒng)上的某個(gè)位置(最好是 PATH 中的某個(gè)位置,例如c:\Windows
目錄下)并運(yùn)行它。
但是請(qǐng)注意,nssm 將自己注冊(cè)為事件日志消息源,這意味著從不同位置運(yùn)行多個(gè)實(shí)例或不同版本的 nssm 可能會(huì)導(dǎo)致混淆。 另請(qǐng)注意,如果您運(yùn)行事件查看器,它將打開 nssm 可執(zhí)行文件,防止您覆蓋它。 如果您要升級(jí) nssm,請(qǐng)記住這一點(diǎn)。
某些功能被標(biāo)記為從特定版本開始支持。 如果描述的版本比 下載 頁面上提供的版本更新,則可能存在具有該功能的預(yù)發(fā)布 build 啟用。
等效命令 下面的示例顯示了 commands 將配置 現(xiàn)有 服務(wù)以匹配屏幕截圖。 在許多情況下,它們代表相關(guān)參數(shù)的默認(rèn)值,因此是多余的。 任何參數(shù)也可以重置為默認(rèn)值
nssm reset <servicename> <parameter>
NSSM安裝一個(gè)服務(wù)
您可以使用 nssm 來安裝服務(wù)。 鍵入的命令是:
nssm install <servicename>
安裝程序由幾個(gè)帶有許多可配置參數(shù)的選項(xiàng)卡組成。 大多數(shù)都預(yù)設(shè)為 nssm 的默認(rèn)值,因此可以在不離開 Application 選項(xiàng)卡的情況下安裝服務(wù)。
NSSM全稱是the Non-Sucking Service Manager,是一款免安裝的服務(wù)管理軟件,能夠?qū)xe應(yīng)用封裝成windows服務(wù)軟件,即將普通exe程序封裝成服務(wù)使之像windows服務(wù)可以設(shè)置自動(dòng)啟動(dòng)等,并且可以監(jiān)控程序運(yùn)行狀態(tài),程序異常中斷后自動(dòng)啟動(dòng),實(shí)現(xiàn)守護(hù)進(jìn)程的功能。
功能介紹
同類型的工具還有微軟自己的srvany,不過nssm更加簡單易用,并且功能強(qiáng)大。它的特點(diǎn)如下:
1、支持普通exe程序(控制臺(tái)程序或者帶界面的Windows程序都可以)
2、安裝簡單,修改方便,不僅支持圖形界面操作,也完全支持命令行設(shè)置
3、可以重定向輸出(并且支持Rotation)
4、可以自動(dòng)守護(hù)封裝了的服務(wù),程序掛掉了后可以自動(dòng)重啟
5、可以自定義環(huán)境變量
6、特別適合一些不帶隨計(jì)算機(jī)啟動(dòng)功能的軟件來封裝成服務(wù)
使用方法
下載完解壓到某個(gè)路徑,然后將win64/win32文件夾路徑(f:\software\nssm\win64)添加到環(huán)境變量Path即可。
NSSM用法
F:\Software\nssm
$ nssm
NSSM: The non-sucking service manager
Version 2.24-101-g897c7ad 64-bit, 2017-04-26
用法: nssm
[ ...]1、安裝服務(wù)
1)圖形界面安裝服務(wù): nssm install []
提示:需要管理員權(quán)限
2 )命令行方式安裝而無需確認(rèn):nssm install [ ...]
2、編輯服務(wù)
1)圖形界面: nssm edit
2)命令行方式
檢索或編輯服務(wù): nssm dump
獲取某項(xiàng)配置信息:nssm get []
單獨(dú)設(shè)置某項(xiàng)配置:nssm set []
重置某項(xiàng)配置: nssm reset []
3、管理服務(wù)
1)啟動(dòng)服務(wù):nssm start
2)停止服務(wù):nssm stop
3)重啟服務(wù):nssm restart
4)查看服務(wù)狀態(tài):nssm status
nssm statuscode
5)手動(dòng)輪轉(zhuǎn)日志文件:nssm rotate
6)nssm processes
4、移除服務(wù)
1)彈出確認(rèn)窗口:nssm remove []
2)不彈出確認(rèn)窗口: nssm remove confirm
加confirm后直接移除,而不會(huì)彈確認(rèn)窗口