我试验了pm2,它是node.js应用程序的进程管理器 . 我尝试了他们的pm2 startup实用程序,它在系统重新启动时为pm2生成并安装启动脚本 .
我在我的Mac上试过这个,它完美无瑕 . pm2会自动重启并生成我的所有节点脚本 .
但是现在,我已经完成了实验,如何从启动中删除它?我希望pm2带有一个类似简单的实用程序,可以从启动时卸载自己 .
我知道它在mac上使用 launchd
来重启进程 . 我注意到它在 /Users/<username>/Library/LaunchAgents
目录下安装了一个 io.keymetrics.PM2.plist
文件 .
它只是删除这个文件一样简单吗?或者它是否正在做一些更具侵入性的东西,需要更优雅的卸载?
它在内部使用以下命令安装启动脚本
sudo env PATH=$PATH:/usr/local/bin pm2 startup darwin -u shaunak
5 回答
pm2 unstartup
在Ubuntu 16.04上运行正常,它在内部使用以下命令:同样也适用于Mac(但内部命令看起来会有所不同) .
首先,使用以下命令获取所有运行代理的列表:
launchctl list | more
或者,如果pm2代理程序使用相同的名称:
launchctl list | grep pm2
然后,如果您拥有属于launchd的pm2代理的名称,请执行:
sudo launchctl remove <pm2-agent-name>
就是这样 . 如果您希望将来再次包含代理,您可以通过以下方式完成:
sudo launchctl load <agent-name>
使用launchctl卸载 .
好的,这对我有用:
我删除了两个文件:
/Users/<username>/Library/LaunchAgents/io.keymetrics.PM2.plist
这个在重启时注册命令
pm2 resurrect
./Users/<username>/.pm2/dump.pm2
我假设最后一个是由
pm2 dump
创建的,即使PM2在重新启动时复活也没有这个信息,没有什么可以复活的?有人找到了更优雅的方法吗?
如果你想停止整个pm2启动过程:
如果您只想删除一个应用程序make:
对你来说可能为时已晚,但也许对某些人有用......