我已经用
启动了一款应用forever start app.js
之后我打字,
forever list
并显示
The "sys" module is now called "util". It should have a similar interface.
info: No forever processes running
但我用
检查了我的流程ps aux | grep node
并显示
root 1184 0.1 1.5 642916 9672 ? Ss 05:37 0:00 node
/usr/local/bin/forever start app.js
root 1185 0.1 2.1 641408 13200 ? Sl 05:37 0:00 node
/var/www/app.js
ubuntu 1217 0.0 0.1 7928 1060 pts/0 S+ 05:41 0:00 grep --color=auto node
我无法控制这个过程,因为我无法在“永远列表”中列出该过程
如何让“永远”了解其正在运行的流程并控制其运行流程。
答案 0 :(得分:7)
forever list
。
通常它是root用户(除非指定了ubuntu upstart),因此您可以使用sudo su
切换到root用户,然后尝试forever list
。
PS。最近移至pm2,其功能远远超过永远。
答案 1 :(得分:1)
在我的情况下:我正在使用NVM并忘记它没有设置/修改全局节点路径,所以我不得不手动设置它
export NODE_PATH="/root/.nvm/v0.6.0/bin/node"
答案 2 :(得分:1)
对此进行修复会很棒。
也遇到了这个。
我相信此问题已记录在 here。
我现在可以推荐的是找到使用您的节点端口的进程,例如3000. 像这样:
sudo lsof -t -i:3000
该命令将显示进程 ID。
然后通过执行以下操作来终止进程:
kill PID
答案 3 :(得分:0)
如果您在init.d中执行forever start app.js
,则应稍后键入sudo HOME=/home/pi/devel/web-app -u root forever list
以获得正确的列表。
答案 4 :(得分:0)
sudo su
forever list
这将输出正确的列表(由 root 用户启动的进程)。