linux 删除node进程,关于node.js:杀死Linux中的节点进程
嘗試使用節點server.js運行節點服務器時,我收到偵聽EADDRINUSE ::: 4002的錯誤。 我通過以下命令在端口4002上監聽進程:sudo lsof -i:4002。 之后,我嘗試使用kill -9終止進程。 問題是當我在終止進程后再次運行sudo lsof -i:4002命令時,我看到節點進程再次以不同的進程ID運行。
節點服務器是由另一個用戶啟動的,我正試圖與另一個用戶一起殺死它。
檢查它是否由supervisor或pm2控制
@bambam是的,的確是由pm2控制的。 我可以殺死它嗎?
pm2列表-> pm2停止
@bambam pm2列表未顯示任何內容,可能是因為pm2由另一個用戶運行。
您有root特權嗎? 如果是這樣,請運行sudo pm2 list
@bambam我確實具有root特權。 運行sudo pm2 list也不給我任何東西。
嗯。 這使其變得更難...您可以嘗試運行sudo -u pm2 list。 這會返回一些東西嗎?
@bambam是的。 2臺正在運行的服務器。
涼。 然后您也可以像這樣刪除進程
@bambam是的,我能夠使用:sudo -u pm2全部停止。 謝謝!! 不知道我是否可以將評論標記為答案。
香港專業教育學院添加它作為答案。
節點/ Express的可能重復項:EADDRINUSE,地址已在使用中-終止服務器
'netstat -nptl'查看所有過程
殺死-9 3887(例如,節點在3887 /節點上運行)
該過程似乎會自動重新啟動。 這個答案如何解決眼前的問題? -
我可以看到您的上述評論并了解您的問題,因此您希望在啟動時刪除pm2腳本。 要在啟動時自動啟動所有nodejs進程,命令為pm2 startup,而與之完全相反的命令為pm2 unstartup,以刪除所有nodejs啟動過程,這就是我想您要的。
在終端中嘗試使用此cmd殺死所有節點進程:
killall node
該過程似乎會自動重新啟動。 這個答案如何解決眼前的問題?
這個答案只是幫助您殺死診斷系統以查看是否有啟動此過程的后臺工作人員的所有節點過程:/
正如我們已經討論過的那樣,該進程是由pm2管理并自動重啟的,因此您必須停止pm2進程,而不僅僅是殺死節點進程。 為此,請運行以下命令
sudo -u pm2 list
現在,您將找到給定用戶已啟動的所有進程。 從此處獲取您要停止的進程的ID,然后運行(以停止單個進程)
sudo -u pm2 stop
或者只是阻止他們全部
sudo -u pm2 stop all
Note that sudo -u is only needed because the processes are run by
another user. If you want to stop a process your current user has
created, omit the sudo -u part
總結
以上是生活随笔為你收集整理的linux 删除node进程,关于node.js:杀死Linux中的节点进程的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 基于Python的开源人脸识别库,离线识
- 下一篇: java opencv 平移_Java中