이것은 모든 Mac에서 재현 할 수있는 오류가 아니며 어제 두 번째 랩톱 에서이 문제를 실행할 수 없었으며 모든 위치에서 실패하는 여러 작업을 시도하는 여러 위치에서 발생하는 오류입니다
shell-init: error retrieving current directory: getcwd: cannot access parent directories: Permission denied
npm을 통해 phantomjs를 설치하려고 할 때 이것을 처음 알았습니다.
$ sudo npm install -g phantomjs
/usr/local/bin/phantomjs -> /usr/local/lib/node_modules/phantomjs/bin/phantomjs
> phantomjs@1.9.10 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! phantomjs@1.9.10 install: `node install.js`
npm ERR! Exit status 8
npm ERR!
npm ERR! Failed at the phantomjs@1.9.10 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.
node.js에서 selenium-standalone 패키지를 설치할 때도 비슷한 문제가 발생합니다.
$ sudo npm install -g selenium-standalone
/usr/local/bin/start-selenium -> /usr/local/lib/node_modules/selenium-standalone/bin/start-selenium
> selenium-standalone@2.43.1-2.9.0-1 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
특정 node.js 패키지와 관련이 없지만 다른 패키지는 잘 설치됩니다 (예 : grunt-cli)
마지막으로 이에 대한 답변을 검색하면서 문제가 있지만 문제를 해결할 수없는 몇 가지 사항도 발견했습니다.
- 디스크 유틸리티를 통해 하드 드라이브에 대한 권한을 수정했습니다. 문제가 발견되어 수정되었습니다.
- 복구로 재부팅하고 디스크를 복구했는데 문제도있었습니다
- sudo /usr/libexec/locate.updatedb도 같은 문제가있었습니다. 사람들은 루트를 활성화하고 실행하는 것이 좋습니다. 이로 인해 해당 명령이 올바르게 실행될 수 있었고 후속 실행에는 더 이상 동일한 오류가 없었습니다. 그러나 npm과 동일한 프로세스를 시도해도 도움이되지 않았습니다.
무엇이 다른 문제를 일으킬 수 있는지 잘 모르겠습니다.