Node.js &引用;“永远的名单”;说:";“无永久进程运行”;但它正在运行一个应用程序

Node.js &引用;“永远的名单”;说:";“无永久进程运行”;但它正在运行一个应用程序,node.js,ubuntu,module,Node.js,Ubuntu,Module,我已经用启动了一个应用程序 forever start app.js 然后我打字 forever list 这表明 The "sys" module is now called "util". It should have a similar interface. info: No forever processes running root 1184 0.1 1.5 642916 9672 ? Ss 05:37 0:00 node /u

我已经用启动了一个应用程序

forever start app.js
然后我打字

forever list
这表明

The "sys" module is now called "util". It should have a similar interface.
info:   No forever processes running
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
但我检查了我的流程

ps aux | grep node
这表明

The "sys" module is now called "util". It should have a similar interface.
info:   No forever processes running
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
我无法控制流程,因为我无法在“永久列表”中列出流程


我怎样才能让“永远”知道它正在运行的进程并控制它正在运行的进程。

我今天也遇到了同样的问题

在我的例子中:我正在使用NVM,但忘记了它不会设置/修改全局节点路径,所以我必须手动设置它

export NODE_PATH="/root/.nvm/v0.6.0/bin/node"

永久列表
应使用与进程相同的用户调用。 通常它是root用户(在ubuntu upstart中,除非指定),因此您可以使用
sudo su
切换到root用户,然后尝试
forever list


PS.移动到最近,它比永远有更多的功能。

如果您在init.d中执行
永远启动app.js
,您应该稍后键入
sudo HOME=/HOME/pi/devel/web app-u root forever list
,以获得正确的列表

sudo HOME=/root forever list

这将输出正确的列表(由root用户启动的进程)。

对此进行修复将非常有用。
我也遇到过这个。
我认为此问题已被记录。
我现在建议您查找正在使用节点端口(例如3000)的进程。像这样:

sudo lsof -t -i:3000
该命令将显示进程id。
然后通过执行以下操作终止进程:

kill PID

您是否也在运行根目录下的永久列表?@emostar我在/var/www上运行了“永久列表”。您应该在
~/.forever
或在您的情况下
/root/.forever
中有一些信息。因此,您所在的目录并不重要,而是您是什么用户。
HOME=/root
应该不是必需的,
sudo
已经以root用户身份运行了该命令。在我的例子中,两者都给出了不同的结果。