如何杀死重新启动的进程? (永远)

How to kill a process that restarts? (Forever)

我想我不小心在某个地方安装了 Foreverjs 并启动了它。每次我终止这个进程时,都会有另一个进程取而代之]1

我不知道 forever 可能在哪里(或者如果那真的是导致它的原因)因为我在本地安装它。

查看 Where does npm install packages? and npm folders 文档

Local install (default): puts stuff in ./node_modules of the current package root.

Global install (with -g): puts stuff in /usr/local or wherever node is installed.

运行 which forever 获取其安装路径并使用

卸载它
  • forever stopall
  • npm uninstall forever 如果它是全局安装的 添加 -g

如果它自己重启就说明有父进程监控。找到父进程先杀掉ps -o ppid= -p PID.

原来我在根用户和我的新特权用户的 PM2 上都有 运行 相同的脚本。每次我杀死 root 用户及其父进程时,root 用户都会使用 PM2 重新启动进程。 所以我这样做了

sudo su
pm2 status //to check pm2 processes
pm2 delete process_name //to delete the process
exit 
pm2 start "yarn start" --name process_name

希望这有助于节省别人的时间