Após mais pesquisas, acabei encontrando uma resposta de trabalho aqui . Eu precisava do flag --unsafe-perm com o npm install, que permitia que os pacotes que não estavam funcionando fossem instalados corretamente
Este não é um erro que eu possa reproduzir em todos os macs, foi capaz de executar este problema em um segundo laptop ontem, e é um erro que recebo de vários locais tentando realizar várias tarefas que estão falhando
shell-init: error retrieving current directory: getcwd: cannot access parent directories: Permission denied
Primeiramente, percebi isso ao tentar instalar o phantomjs via npm:
$ sudo npm install -g phantomjs
/usr/local/bin/phantomjs -> /usr/local/lib/node_modules/phantomjs/bin/phantomjs
> [email protected] install /usr/local/lib/node_modules/phantomjs
> node install.js
shell-init: error retrieving current directory: getcwd: cannot access parent directories: Permission denied
node.js:815
var cwd = process.cwd();
^
Error: EACCES, permission denied
at Function.startup.resolveArgv0 (node.js:815:23)
at startup (node.js:58:13)
at node.js:906:3
npm ERR! Darwin 13.4.0
npm ERR! argv "node" "/usr/local/bin/npm" "install" "-g" "phantomjs"
npm ERR! node v0.10.32
npm ERR! npm v2.0.0
npm ERR! code ELIFECYCLE
npm ERR! [email protected] install: 'node install.js'
npm ERR! Exit status 8
npm ERR!
npm ERR! Failed at the [email protected] install script.
npm ERR! This is most likely a problem with the phantomjs package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! node install.js
npm ERR! You can get their info via:
npm ERR! npm owner ls phantomjs
npm ERR! There is likely additional logging output above.
Um problema semelhante também ocorre ao instalar o pacote selenium-standalone de node.js:
$ sudo npm install -g selenium-standalone
/usr/local/bin/start-selenium -> /usr/local/lib/node_modules/selenium-standalone/bin/start-selenium
> [email protected] install /usr/local/lib/node_modules/selenium-standalone
> node install.js
shell-init: error retrieving current directory: getcwd: cannot access parent directories: Permission denied
node.js:815
var cwd = process.cwd();
^
Error: EACCES, permission denied
at Function.startup.resolveArgv0 (node.js:815:23)
at startup (node.js:58:13)
at node.js:906:3
O que parece indicar que não está relacionado a nenhum pacote node.js específico, no entanto, outros pacotes são instalados bem (como o grunt-cli)
Finalmente, em busca de respostas para isso, também encontrei algumas coisas que tiveram problemas, mas não conseguiram resolver o problema em questão:
Não sei o que mais poderia estar causando o problema.
Após mais pesquisas, acabei encontrando uma resposta de trabalho aqui . Eu precisava do flag --unsafe-perm com o npm install, que permitia que os pacotes que não estavam funcionando fossem instalados corretamente
Correu para o mesmo problema.
/usr/local/bin/cordova -> /usr/local/lib/node_modules/cordova/bin/cordova
/usr/local/bin/ionic -> /usr/local/lib/node_modules/ionic/bin/ionic
> [email protected] install /usr/local/lib/node_modules/ionic/node_modules/node-sass
> node scripts/install.js
shell-init: error retrieving current directory: getcwd: cannot access parent directories: Permission denied
path.js:424
var path = (i >= 0) ? arguments[i] : process.cwd();
^
Error: EACCES: permission denied, uv_cwd
at Error (native)
at Object.posix.resolve (path.js:424:50)
at startup (node.js:96:32)
at node.js:968:3
npm ERR! Darwin 15.4.0
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "install" "-g" "cordova" "ionic"
npm ERR! node v4.4.3
npm ERR! npm v2.15.1
npm ERR! code ELIFECYCLE
npm ERR! [email protected] install: 'node scripts/install.js'
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the [email protected] install script 'node scripts/install.js'.
npm ERR! This is most likely a problem with the node-sass package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! node scripts/install.js
npm ERR! You can get information on how to open an issue for this project with:
npm ERR! npm bugs node-sass
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!
npm ERR! npm owner ls node-sass
npm ERR! There is likely additional logging output above.
Usando o comando:
sudo npm install --unsafe-perm -g cordova ionic
funcionou para mim.