it-swarm-ja.com

Shell-initの取得:現在のディレクトリの取得中にエラーが発生しました:getcwd:親ディレクトリにアクセスできません:さまざまな場所でアクセスが拒否されました

これは、すべてのMacで再現できるエラーではなく、昨日2台目のラップトップで問題なく実行できました。また、複数の場所で複数のタスクを実行しようとすると、すべて失敗するエラーになります。

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

> [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 phantomj[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.

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

> [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

これは、特定のnode.jsパッケージに関連していないことを示しているようですが、他のパッケージは正常にインストールされます(grunt-cliなど)。

最後に、これに対する答えを探しているときに、問題があったが問題の問題を解決できなかったものをいくつか見つけました。

  1. ディスクユーティリティを介してハードドライブのアクセス許可を修正しました。問題が見つかり、修正されました
  2. 再起動してリカバリし、ディスクを修復しましたが、これにも問題がありました
  3. Sudo/usr/libexec/locate.updatedbにも同じ問題がありました。人々はrootを有効にして実行することを勧めました。これにより、そのコマンドを正しく実行できるようになり、後続の実行で同じエラーが発生しなくなりました。しかし、npmでこれと同じプロセスを試しても、助けにはなりませんでした

他に何が問題を引き起こしているのかわかりません。

2
Nodren

さらに検索した後、私は ここで実用的な答え を見つけることになりました。 npm installで--unsafe-permフラグが必要でした。これにより、機能していなかったパッケージを正しくインストールできました。

2
Nodren

同じ問題に遭遇しました。

/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.

コマンドの使用:

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

私のために働いた。

0