web-dev-qa-db-ja.com

gyp ERR!スタックエラー:EACCES:権限が拒否されました、mkdir '/ var / www / project_name / node_modules / node-sass / build'

Angularプロジェクトをデプロイしていて、Sudo npm installを実行するとこれらのエラーが発生します(Sudoがないと動作しません)。npmにインストールする権限がないようです。最近nodejsに8.11.4に更新しましたが、それでも同じエラーが発生するため、明らかにバージョンの問題ではありませんでした。

gyp ERR! configure error 
gyp ERR! stack Error: EACCES: permission denied, mkdir '/var/www/project_name/node_modules/node-sass/build'
gyp ERR! System Linux 4.4.0-1065-aws
gyp ERR! command "/usr/local/bin/node" "/var/www/project_name/node_modules/node-gyp/bin/node-gyp.js" "rebuild" "--verbose" "--libsass_ext=" "--libsass_cflags=" "--libsass_ldflags=" "-libsass_library="
gyp ERR! cwd /var/www/front-stormsensor/node_modules/node-sass
gyp ERR! node -v v8.11.4
gyp ERR! node-gyp -v v3.8.0
gyp ERR! not ok 
Build failed with error code: 1

プロジェクト内に何か問題がありますか?または間違ったインストール?ここからどこに行くべきかわからない、ありがとう

4
LaurenAH

次のコマンドを試してください

Sudo npm i --unsafe-perm

うまくいかない場合は、以下を試してください

Sudo rm -rf ~/.node-gyp
Sudo npm cache clean -f
Sudo npm install -g n
Sudo n stable
Sudo npm i --unsafe-perm
31
jNambiar

このコマンドを実行して修正しました。

Sudo npm i --unsafe-perm

1
LaurenAH

npmのアクセス許可はかなり頭痛の種です。上記の解決策は私のマシンでは機能しませんでした。糸はトリックをしました。 Sudo npm i yarn -g yarn add

0
irth

Jnambiarからのこのソリューションは私にとってうまくいきました。私のOSはOSX 10.11.6です。それは基本的に権限の問題です。

Sudo rm -rf ~/.node-gyp
Sudo npm cache clean -f
Sudo npm install -g n
Sudo n stable
Sudo npm i --unsafe-perm

上記の一連のコマンドは、問題の解決に役立ちました。私はこれを投稿して、node-sassパッケージを2日間インストールするのに苦労している間に機能した一連のコマンドを承認します。

0
Chem_Lab

グローバルに何かをインストールする場合は、以下を使用できます。

$ Sudo npm install -g <package> --unsafe-perm
0
Jimmy Adaro