sh: 1: node-gyp-build: Permission denied and npm ERR! code ELIFECYCLE npm ERR! errno 126

Viewed 6022

Tried to run this on Ubuntu 18.04 x64. It used to work properly a day ago but it stopped out of nowhere.

npm i simple-youtube-api

I used to be able to install them but not anyone, im getting this:

> bufferutil@4.0.1 install /root/NezukoBot/node_modules/bufferutil
> node-gyp-build

sh: 1: node-gyp-build: Permission denied
npm WARN discord.js@11.5.1 requires a peer of @discordjs/uws@^10.149.0 but none is installed. You must install peer dependencies yourself.
npm WARN discord.js-commando@0.10.0 requires a peer of sqlite@^2.0.0 but none is installed. You must install peer dependencies yourself.
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@2.1.3 (node_modules/pm2/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@2.1.3: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@2.1.3 (node_modules/mocha/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@2.1.3: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.2.12 (node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.2.12: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})

npm ERR! code ELIFECYCLE
npm ERR! errno 126
npm ERR! bufferutil@4.0.1 install: `node-gyp-build`
npm ERR! Exit status 126
npm ERR!
npm ERR! Failed at the bufferutil@4.0.1 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /root/.npm/_logs/2020-07-02T12_58_27_816Z-debug.log

I have tried this but i still get the error:

npm config set user 0
npm config set unsafe-perm true
2 Answers

NPM is careful when installing packages as root.

Installing global packages as root or sudo can potentially damage your operating system, as it may accidentally replace files critical to the operating system itself.

However if you still want to proceed, you know what you are doing and you are e.g. using a virtual machine, you can do.

npm install --unsafe-perm -g simple-youtube-api

See unsafe-perm documentation.

Related