Sinau Coding
Berbincang santai perihal pemrograman
Tukang ketik yang sedang belajar pemrograman
5/03/2018 06:51:00 AM

Mengatasi npm error ./postinstall.js - error storing binary to local file Error: EACCES: permission denied

Jika anda menggunakan sistem operasi Linux atau Mac, mungkin anda pernah mengalami error npm error ./postinstall.js  - error storing binary to local file Error: EACCES: permission denied , padahal anda sudah menggunakan sudo atau root.

Berikut ini adalah contoh pesan error-nya


node ./postinstall.js
ngrok - downloading binary https://bin.equinox.io/c/4VmDzA7iaHb/ngrok-stable-linux-amd64.zip
ngrok - error storing binary to local file { Error: EACCES: permission denied, open '/usr/lib/node_modules/...'
errno: -13,
code: 'EACCES',
syscall: 'open',
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! ngrok@2.2.24 postinstall: `node ./postinstall.js`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the ngrok@2.2.24 postinstall script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

Error ini dikarenakan pada saat script postinstall dijalankan, npm menggunakan user nobody dan bukan user yang saat itu digunakan, dalam hal ini adalah root karena menggunakan sudo.

Solusi dari error ini ternyata sangat mudah, yaitu dengan menambahkan flag/argumen --unsafe-perm

Contoh, jika awalnya adalah :


sudo npm install -g @shoutem/cli

maka diubah menjadi :


sudo npm install -g @shoutem/cli --unsafe-perm 

Apakah fungsi dari flag/parameter --unsafe-perm ? Silahkan cek langsung pada tautan di bagian bawah.

unsafe-perm
Default: false if running as root, true otherwise
Type: Boolean

Set to true to suppress the UID/GID switching when running package scripts. If set explicitly to false, then installing as a non-root user will fail.

Selamat mencoba.

Sumber : https://docs.npmjs.com

Komentar

Load more