Eu estava recebendo um erro EACCES ao tentar executar o seguinte comando:
npm i -g node-static
o detalhe do erro é o seguinte:
npm WARN checkPermissions Missing write access to /usr/local/node-
v9.11.1-linux-x64/lib/node_modules
npm ERR! path /usr/local/node-v9.11.1-linux-x64/lib/node_modules
npm ERR! code EACCES
npm ERR! errno -13
npm ERR! syscall access
npm ERR! Error: EACCES: permission denied, access '/usr/local/node-
v9.11.1-linux-x64/lib/node_modules'
npm ERR! { Error: EACCES: permission denied, access '/usr/local/node-
v9.11.1-linux-x64/lib/node_modules'
npm ERR! stack: 'Error: EACCES: permission denied, access
\'/usr/local/node-v9.11.1-linux-x64/lib/node_modules\'',
npm ERR! errno: -13,
npm ERR! code: 'EACCES',
npm ERR! syscall: 'access',
npm ERR! path: '/usr/local/node-v9.11.1-linux-x64/lib/node_modules'
}
npm ERR!
npm ERR! Please try running this command again as root/Administrator.
npm ERR! A complete log of this run can be found in:
Por isso, pesquisei e obtive uma solução alterando a propriedade por meio de qualquer um dos seguintes comandos:
sudo chown -R $(whoami) ~/.npm
ou:
sudo chown -R $(whoami) $(npm config get prefix)/{lib/node_modules,bin,share}
mas poucos usuários estavam dizendo Não hackear com permissões, instale o nó da maneira correta. Como eu sou novo no Ubuntu assim ficando confuso que seja seguro para hackear permissão ou não.
O que eu estou recebendo através do comando superior é que ele mudará a propriedade do diretório npm e seus subdiretórios para o usuário principal que sou eu, mas essa mudança de propriedade é para esse diretório npm específico, mas nada mais, certo? por favor me sugerir se esta abordagem é segura e boa, obrigado!