Sinau Coding
Berbincang santai perihal pemrograman
Tukang ketik yang sedang belajar pemrograman
6:51 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

Terbaru

Cara install Postgresql di MacOS
Postgresql adalah salah satu object-relational database open source yang memiliki banyak fitur enterprise layaknya Or...
Cara install npm di Laravel
aravel adalah sebuah framework untuk webapp yang berbasis php, sedangkan npm adalah sebuah package manager untuk node...
Cara install MariaDB di MacOS dengan menggunakan Homebrew
MariaDB selain tersedia di Windows dan Linux, juga tersedia di MacOS dan dapat diinstall dengan menggunakan homebrew....
Cara insert data ke dalam list atau table tanpa menutup Modal
Desain halaman dan dialog tambah data biasanya adalah, User klik tombol yang akan memunculkan dialog, dimana dialog a...