错误:EBADF,使用nohup永远运行节点时的错误文件描述符

时间:2013-05-17 07:57:38

标签: node.js nohup forever

我有一个问题,node.js运行一个小型Web服务器,从文件系统中提供文件。当用node server.js启动时,它就像魅力一样,但是当用nohup启动它时,或者永远无法找到这些文件。

3 个答案:

答案 0 :(得分:8)

这对我有用:

nohup node server.js </dev/null

答案 1 :(得分:3)

此处的另一个解决方案是使用括号在子shell中运行该命令。 (nohup node index.js)

答案 2 :(得分:2)

原来是文件的文件路径是问题所在。使用节点运行服务器时,工作目录与server.js文件相同,因此node.js设法找到该文件。

当使用nohup启动或者只是永远启动时,工作目录似乎与server.js不同。

我通过将全局变量__dirname添加到文件名来解决这个问题。