linux - Ubuntu Nodejs pm2 访问/tmp 目录时永远出现 ENOENT 错误

标签 linux node.js ubuntu forever pm2

我在 digital ocean 上有一个 ubuntu 14.04 服务器。

它正在运行nodejs(restify)它上传文件,上传后将它们从/tmp移动到我的存储目录。

运行sudo node app.js时,它可以访问/tmp目录。当我使用pm2或forever时,我收到错误ENOENT。

我 chmod 777/tmp 目录并对根目录进行了 chown(因为这就是我运行 pm2 并永远在其下运行的目录)。

但是每次我上传新文件时,新上传文件的权限都不是777。

如何让/tmp中的所有新文件都具有777权限,或者允许pm2或forever让脚本访问它?

最佳答案

事实证明,它在 tmp 目录上出现 ENOENT 错误,尽管这是一个单独的问题。

我将其移动到的目录不存在。我在脚本中使用相对 url,因此当作为 permanent/pm2 运行时,它不匹配。

修复了使用路径模块和使用文件的完整 URL。

希望这对某人有帮助

关于linux - Ubuntu Nodejs pm2 访问/tmp 目录时永远出现 ENOENT 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28096649/

相关文章:

node.js - 在nodejs(windows)中显示正在运行的子进程的输出

angularjs - Firebase 拥有数千个 on() 事件监听器,设计良好

node.js - 在 AWS EC2 Ubuntu 实例上通过 iptables 重定向端口

regex - 将包含特定文本的行从一个文件复制到另一个文件

linux - 进程或程序正在进行的系统调用类型

Linux 无法删除由 www-data 创建的文件

javascript - 如何将数据从 JS 发送到 Bash?

javascript - 从 express/nodejs 中的路由特定中间件链退出

ubuntu - 构建neo4j mazerunner项目时出现的问题

python - 将我的 python 脚本添加到系统托盘?或开始菜单,运行 mu 简单的 GUI?