shell-init 가져 오기 : 현재 디렉토리 검색 오류 : getcwd : 상위 디렉토리에 액세스 할 수 없음 : 다른 위치에서 권한이 거부되었습니다.


2

이것은 모든 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)

마지막으로 이에 대한 답변을 검색하면서 문제가 있지만 문제를 해결할 수없는 몇 가지 사항도 발견했습니다.

  1. 디스크 유틸리티를 통해 하드 드라이브에 대한 권한을 수정했습니다. 문제가 발견되어 수정되었습니다.
  2. 복구로 재부팅하고 디스크를 복구했는데 문제도있었습니다
  3. sudo /usr/libexec/locate.updatedb도 같은 문제가있었습니다. 사람들은 루트를 활성화하고 실행하는 것이 좋습니다. 이로 인해 해당 명령이 올바르게 실행될 수 있었고 후속 실행에는 더 이상 동일한 오류가 없었습니다. 그러나 npm과 동일한 프로세스를 시도해도 도움이되지 않았습니다.

무엇이 다른 문제를 일으킬 수 있는지 잘 모르겠습니다.

답변:


2

추가 검색 후, 나는 여기서 실제 답변을 찾았습니다 . npm install과 함께 --unsafe-perm 플래그가 필요했는데, 작동하지 않는 패키지를 올바르게 설치할 수있었습니다


0

같은 문제에 부딪쳤다.

/usr/local/bin/cordova -> /usr/local/lib/node_modules/cordova/bin/cordova
/usr/local/bin/ionic -> /usr/local/lib/node_modules/ionic/bin/ionic

> node-sass@3.4.2 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! node-sass@3.4.2 install: `node scripts/install.js`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the node-sass@3.4.2 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.

명령을 사용하여 :

sudo npm install --unsafe-perm -g cordova ionic

나를 위해 일했다.


1
답변으로 "감사"를 추가하지 마십시오. 사이트에 시간을 투자 하면 원하는 답변을 찬성 할 수있는 충분한 권한 을 얻을 수 있으며, 이는 수퍼 유저가 고맙다는 말입니다.
DavidPostill
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.