CentOS7停止NodeJS服務(wù)的完整操作指南
為什么需要停止NodeJS服務(wù)
在服務(wù)器維護(hù)、版本更新或資源釋放時(shí),正確停止NodeJS服務(wù)可避免數(shù)據(jù)丟失和端口占用問題。本文提供三種主流操作方案。
方法一:通過systemctl管理系統(tǒng)服務(wù)
若NodeJS通過系統(tǒng)服務(wù)運(yùn)行,執(zhí)行以下命令:
sudo systemctl stop nodejs-service
sudo systemctl disable nodejs-service
替換nodejs-service為實(shí)際服務(wù)名稱,建議使用systemctl status
驗(yàn)證服務(wù)狀態(tài)。
方法二:終止NodeJS進(jìn)程
通過進(jìn)程管理命令操作:
- 查找NodeJS進(jìn)程ID:
ps aux | grep node
- 終止指定進(jìn)程:
sudo kill -9 [PID]
- 驗(yàn)證端口釋放:
netstat -tuln | grep 3000
方法三:通過npm腳本控制
對(duì)于通過npm start
啟動(dòng)的應(yīng)用:
npm run stop
# 或使用進(jìn)程管理器
pm2 stop all
PM2用戶需提前安裝進(jìn)程管理工具。
操作后驗(yàn)證步驟
- 檢查服務(wù)狀態(tài):
systemctl is-active nodejs-service
- 確認(rèn)端口占用:
lsof -i :3000
- 查看資源釋放:
top | grep node
常見問題處理
- Q: 出現(xiàn)"Address already in use"錯(cuò)誤?
- A: 使用
killall node
強(qiáng)制終止所有Node進(jìn)程 - Q: 服務(wù)狀態(tài)顯示failed怎么辦?
- A: 檢查日志文件:
journalctl -u nodejs-service