NodeJS 如何终止pm2 --no-daemon进程

dvtswwa3  于 2023-03-01  发布在  Node.js
关注(0)|答案(8)|浏览(525)

我使用pm2作为Node.js的进程管理器。
在许多情况下,我认为我会将其作为守护进程运行,但是如果您在本地使用它作为调试,我认为有时您需要使用--no-daemon选项。
使用此--no-daemon选项移动pm2时,如何结束该过程?

2hh7jdfx

2hh7jdfx1#

您可以尝试:
pm2 kill
或使用以下命令查找正在运行的PM2进程:
ps aux | grep PM2
然后用以下物质杀灭:
kill -9 [pid]
-9开关向进程发送KILL信号,而不是默认中断(INTSIGINT)信号,等效于-KILL-SIGKILL。中断是一种侵入性较小的方式,您可以先尝试中断,让进程优雅地退出,但是,如果它没有响应,Kill信号应导致立即终止(除非进程是僵尸进程)。

mqkwyuun

mqkwyuun2#

您可以使用查看在pm2中注册的所有进程

pm2 list

假设要停止的进程名为processA,使用以下命令将停止processA:

pm2 stop processA

如果您想删除进程,请使用以下命令:

pm2 delete processA

如果您不想终止某个特定进程,而想终止pm2本身,请使用以下命令:

pm2 kill
xvw2m8pv

xvw2m8pv3#

正确答案是pm2杀灭
$pm2杀灭
[PM2][v]模块停止
[PM2]正在应用程序[全部](ID:0)
[PM2]你好
[PM2][v]所有应用程序已停止
[PM2][v] PM2守护程序停止

zz2j4svz

zz2j4svz4#

另一个解决方案是运行pm2 delete allpm2 stop all。这不会杀死pm2进程本身,但会清除内部pm2的进程列表。

ztigrdn8

ztigrdn85#

首先列出所有流程:

pm2 list

假设您进程是dev

pm2 stop dev

现在,删除流程

pm2 delete dev

在该过程状态变为X1MON1X之后。
如果要终止该守护进程,请运行命令

pm2 kill
inkz8wg9

inkz8wg96#

sudo pkill -f pm2

这应该会杀死linux中pm2的所有进程

vyswwuz2

vyswwuz27#

有一件事要添加到已接受的答案中。这些命令只对当前用户有效。我在digitalocean droplet上遇到过同样的问题。我使用“ubuntu”用户名登录,但我看到God守护进程指向/home/nodejs/.pm2
如果是这种情况,您需要切换到该用户:sudo su nodejs,然后从那里运行pm2 kill命令。

hof1towb

hof1towb8#

如果它在前台运行,你应该可以用ctl + c杀死它,就像你杀死node server.js一样。

相关问题