简体   繁体   中英

Ubuntu - nodejs - npm install -g > Error: EACCES: permission denied, mkdir

Was having a issue installing a NodeJS npm package. On a Digital-Ocean Droplet Ubuntu (14.04) server.

 npm install -g PACKAGE-NAME

I even tried with sudo had the same error.

Error message:

Error: EACCES: permission denied, mkdir '.....etc' 

Hope this helps someone took me a while to find a way to get this to install.

 sudo npm install -g PACKAGE-NAME --unsafe-perm=true --allow-root

What the flags do:

unsafe-perm - https://docs.npmjs.com/misc/config#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.

allow-root - https://bower.io/docs/api/#allow-root

--allow-root Allows running commands as root. Bower is a user command, there is no need to execute it with superuser permissions. However, if you still want to run commands with sudo, use --allow-root option.

For me, I didn't want to install npm for all the users. Hence wasn't using sudo npm ... . Instead I granted the required permissions to the directory and it worked.

sudo chmod -R ugo+rw ./node_modules/

You have to provide permission to folder/dir in ubuntu to run that command.

Change folder/dir permissions:

sudo chmod -R a+rwx ./node_modules/

And try to install the package again.

npm install PACKAGE-NAME

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM