Tech_Kazu.log

【備忘録】Node.jsでパーミッションで怒られが発生してグローバルインスコができなくなったときに読むもの

2020/09/27

カズ之助
最近のマイブームはトイレにパソコンを持ち込んでn時間Wikipediaを読むことです
Twitter GitHub

​ ​

こんにちは!!!!!!!

こんにちは!!!!!!!!!!!!!!!!!!!!!!!!(クソでか挨拶)
みんな大好き、幼女のカズ之助くんです。
突然ですが……カズ之助くん、幼女なのでょゎょゎなんですよ。
それで、ついさきほどなんですが、webpacknpmでグローバルインストールしようとしたらパーミッションエラーで入れられなくて泣いちゃったんですよね。
幼女のカズ之助くんは怒られるのに慣れていません。あぁなんて可哀想…… ​

ローカルインストールは?

ローカルインストールはできます。
ただ、グローバルインストールができないので、webpackコマンドが使えないんですよねあぁ困った困った…… ​

どんな感じになるかというと……

こんな感じになります 2020 09 27 01 32 59 以下、文字起こし

$ npm install -g webpack webpack-cli
(省略)
gyp ERR! configure error
gyp ERR! stack Error: EACCES: permission denied, mkdir '/usr/local/lib/node_modules/webpack(省略)'
gyp ERR! System Darwin 19.6.0
gyp ERR! command "/usr/local/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
(省略)

なんか上の画像のように先頭にsudoつけても同じような感じでエラー出たのでちょっと悲しくなりました。
(ほら、パーミッション関連だとsudoつければなんとかなっちゃうことが多いじゃないですか。大いなる力ですよ?)

解決方法

参考: npmでpermission deniedになった時の対処法[mac] - qiita
​ やったことは、npmのディレクトリの所有者?を変更しました。

  1. npmのディレクトリのパスを確認して…

    $ npm config get prefix
    /usr/local

    あの、どうやらこれ出力が/usrってなっていたら良くないようなので、その際はこれを見てみよう!!

  2. npmディレクトリのオーナーを自分のアカウントに変更する

    $ sudo chown -R $(whoami) $(npm config get prefix)/{lib/node_modules,bin,share}

    2020 09 27 01 33 58

    動いた?

    うごいた!!!!!!!!!!!!!!!!! 2020 09 27 01 34 13 やったね!!!


カズ之助
最近のマイブームはトイレにパソコンを持ち込んでn時間Wikipediaを読むことです
Twitter GitHub