2017-02-16 7 views
0

私のラップトップでは、Ubuntu 14.04では、console.log("Hi, this is Dog.")という内容のファイル~/test.jsを作成します。私はスクリプト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" 

Iは、相対および絶対パスと試みた

は、/bin/bash/bin/sh/etc/passwdwww-dataためのシェルを変更し、これらのアイデアのすべての組み合わせ。同じエラー。何か案が?

+0

Ubuntu、Linux、Node.jsのタグを削除するのは、これらのタグに固有のものではないファイルアクセス権に関する質問が多いようです。 – Montmons

+0

$ PATHや$ NODE_PATHなどのようなものかもしれません。だからこそ、私はこれらのタグが理にかなっています。 –

+0

ああ、私は今参照してください。 – Montmons

答えて

0

www-dateユーザーがファイルにアクセスできないようにアクセス許可が設定されていると私に聞こえます。

chmod a+wx test.js 

そしてもう一度sudoコマンドを実行します。のような何かをしようと、test.jsファイルを作成したユーザーアカウントにログインして

+0

動作しません。私は 'chmod 777 test.js'や' chown www-data.www-data test.js 'でも試してみました。同じエラー。 –

+0

'sudo"のようなものを試してみてください。PATH = $ PATH "-u www-data sh -c"/usr/bin/node /home/me/test.js "'? – Montmons

+0

同じエラー: 'エラー:モジュール '/ home/me/test.js'を見つけることができません –

関連する問題