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

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/

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.