2016-10-06 1 views
1

をインストールするためにnpm installsudoとして実行していますが、一部の読み取りでこのエラーが発生します。npmでcopayをインストールすると返信します:

$ sudo npm install 
Password: 
npm WARN lifecycle [email protected]~preinstall: cannot run in wd %s %s (wd=%s) [email protected] bower install /Users/Jarvis/Documents/Projects/copay 
npm WARN lifecycle [email protected]~postinstall: cannot run in wd %s %s (wd=%s) [email protected] npm run build /Users/Jarvis/Documents/Projects/copay 
[email protected] /Users/Jarvis/Documents/Projects/copay 

私はそれを解決する良い方法を見つけることができませんでした。誰かがそれを修正するアイディアを持っていますか?

答えて

1

最近発見したように、this explanationが頭に当たっています。

マヌーが言うように:

ビットの深掘りで、私はNPMはそれがスクリプトを実行するときにその 権限をダウングレードしようとすることがわかりました。特権をダウングレードすると、 がこのエラーを引き起こします。

ドッカーコンテナでrootとして実行しようとすると、同様の問題が発生していました。 "npm install --unsafe-perm"ソリューションが私のために働いた。

jfromaから「hacker news」に「do not do this」と表示されます。彼らは状況を説明していますが、安全でない理由を説明しておらず、npm config pageを参照していますが、インストール中に権限がエスカレートされていないかどうかについての真偽設定だと説明しています。

実際には、the broader conversation that jfroma's comment is inを見ると、npmパッケージに "rm -fr /"が付いている可能性があるということを推測できます。 --unsafe-permでそのパッケージをインストールするためにnpmをrootとして実行すると、あなたは悲しいことになります。

私はソースから毎回再作成しているビルド用のドッキング・コンテナにこのインストールを実行しているので、十分安全です。私は常に私のものを取り戻すためにレポに戻ることができます。

ワークステーションに何かをインストールしようとしている場合、おそらくadjusting the permissions of your installationがうまくいくでしょうか?

関連する問題