在我的笔记本电脑,Ubuntu的14.04,我创建了一个文件~/test.js
,唯一的内容console.log("Hi, this is Dog.")
。我运行脚本node test.js
(节点v6.9.5),我得到所需的输出Hi, this is Dog.
与特定用户运行的节点脚本
然后我尝试运行该脚本作为www-data
用户。所以,我跑:
sudo -u www-data /usr/bin/node /home/me/test.js
和...
Error: Cannot find module '/home/me/test.js'
我在做什么错?
我有相对和绝对路径试过,
sudo -u www-data sh -c "/usr/bin/node /home/me/test.js"
改变了壳为www-data
在/etc/passwd
到/bin/bash
和/bin/sh
,并且这些想法的所有组合。同样的错误。任何想法?
最佳删除了Ubuntu,Linux和Node.js的标签,展示你的问题似乎主要是关于文件的权限,这是不特定于这些标签。 – Montmons
我觉得喜欢它可能是关系到$ PATH或$ NODE_PATH或类似的东西。这就是为什么我通过这些标签是有道理的。 –
好的,我现在看到了。 – Montmons