Prevent permission errors at installation

If you see an EACCES error when you try to install a lumber-cli globally, follow this tutorial.

Please be sure of your agent type and version and pick the right documentation accordingly.

This is the documentation of the forest-express-sequelize and forest-express-mongoose Node.js agents that will soon reach end-of-support.

forest-express-sequelize v9 and forest-express-mongoose v9 are replaced by @forestadmin/agent v1.

Please check your agent type and version and read on or switch to the right documentation.

Prevent permission errors at installation

Depending on how you've installed Node.js on your system, you could encounter a permissions error EACCES similar to the following output.

In this case, I got the error on a EC2 instance running on Ubuntu 10.04 with Node v8.10.0 and NPM v.3.5.2. But you can have this similar problem on another system and node version.

npm ERR! Linux 4.15.0-1021-aws
npm ERR! argv "/usr/bin/node" "/usr/bin/npm" "install" "-g" "lumber-cli" "--save"
npm ERR! node v8.10.0
npm ERR! npm  v3.5.2
npm ERR! path /usr/local/lib
npm ERR! code EACCES
npm ERR! errno -13
npm ERR! syscall access

npm ERR! Error: EACCES: permission denied, access '/usr/local/lib'
npm ERR!  { Error: EACCES: permission denied, access '/usr/local/lib'
npm ERR!   errno: -13,
npm ERR!   code: 'EACCES',
npm ERR!   syscall: 'access',
npm ERR!   path: '/usr/local/lib' }
npm ERR!
npm ERR! Please try running this command again as root/Administrator.

npm ERR! Please include the following file with any support request:
npm ERR!     /home/ubuntu/npm-debug.log

The problem is because NPM does not have the write access to the directory that will contain the package you want to install (here lumber-cli).

To solve this issue, we recommend to override the default directory where your global NPM packages will be stored.

mkdir ~/.npm-global

Then, configure NPM to use this directory instead of the default one:

npm config set prefix '~/.npm-global'

Then, make the node executables accessible from your PATH. To do so, export the environment variable PATH by opening or creating the file ~/.profile and add this line at the end:

export PATH=~/.npm-global/bin:$PATH

Finally, reload the ~/.profile file:

source ~/.profile

That's it, now you should be able to install lumber without any error 🎉

npm install -g lumber-cli

Last updated