杀死特定端口的进程

时间:2013-10-02 08:26:51

标签: node.js express

我正在使用expressJS并设置了服务器并永远使用了选项

我正在尝试杀死我开始使用

的进程
forever start app.js

我正在使用端口7006

我使用过 ::

  • fuser -k 7006/tcp
  • netstat -plten |grep 7006 .....然后我使用kill -9 7392

我还使用了sudo ssh myip fuser -k 7006/tcp 我收到了公钥回复

仍然无法杀死在特定端口(7006)

运行的进程

2 个答案:

答案 0 :(得分:1)

使用像Forever这样的服务的目的是在任何情况下重启应用程序。 即使您终止在7006上运行的进程,它也会在同一进程上自动再次启动应用程序。

你必须杀死永久进程而不是7006上运行的进程。

ps -ef | grep forever 

您将获得以下输出..

harry@joker:~/git/mean|master ⇒  ps -ef |grep forever
  501  4259     1   0 12:57AM ??         0:00.27 /usr/local/bin/node /usr/local/lib/node_modules/forever/bin/monitor server.js
  501  4327  3327   0 12:58AM ttys000    0:00.00 grep forever
harry@joker:~/git/mean|master ⇒

使用pid 4259杀死进程

要清除全部,请看下面的输出..

harry@joker:~/git/mean|master ⇒  ps -ef | grep 4259
  501  4259     1   0 12:57AM ??         0:00.27 /usr/local/bin/node /usr/local/lib/node_modules/forever/bin/monitor server.js
  501  4260  4259   0 12:57AM ??         0:00.71 /usr/local/bin/node /Users/harry/git/mean/server.js
  501  4342  3327   0  1:02AM ttys000    0:00.00 grep 4259
harry@joker:~/git/mean|master ⇒

注意4260的父进程,它的4259(这意味着永远分叉另一个运行节点server.js的进程)

希望这有帮助!

答案 1 :(得分:1)

尝试:

$ forever stopAll
此过程中的

kill不一定有效,因为forever会继续产生它:)

HTH,
亚伦

相关问题