1
0

More than 1 year has passed since last update.

npmでモジュールインストール時にPermission deniedが出たときの対応

Last updated at Posted at 2021-09-24

Serverless Frameworkやnode-gypをインストールする際に、Permission Deniedというエラーが出力され、モジュールのインストールに失敗する場合があります。

prebuild-install WARN install EACCES: permission denied, access '/root/.npm'
gyp ERR! configure error
gyp ERR! stack Error: EACCES: permission denied, mkdir '/usr/local/lib/node_modules/serverless/node_modules/snappy/build'
gyp ERR! System Linux 5.4.0-86-generic
gyp ERR! command "/usr/bin/node" "/usr/bin/node-gyp" "rebuild"
gyp ERR! cwd /usr/local/lib/node_modules/serverless/node_modules/snappy
gyp ERR! node -v v10.19.0
gyp ERR! node-gyp -v v6.1.0
gyp ERR! not ok

そのような場合は、以下のように --unsafe-perm をオプションに追加することで、インストールが可能になります。

sudo npm install -g serverless --unsafe-perm

ちなみに、上記のようなエラーが発生するケースとして、rootで npm install -g を実行した場合が挙げられます。rootでnpmを実行することはセキュリティやOSを含めたシステム全体の安定性の観点から出来れば避けたいものですが、しかし、モジュールの制約など、事情によりrootでパッケージをインストールせざるを得ないケースもあると思います。

npmでモジュールをインストールする際にPermission deniedになって困っている方は、必要性を判断のうえ、お試しください。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0