【问题标题】:Error after installing MAC OS X El Capitan安装 MAC OS X El Capitan 后出错
【发布时间】:2015-10-16 23:28:49
【问题描述】:

我的 Mac 上安装了 NodeJS。

$ node -v
v4.2.1

我正在尝试安装凉亭。结果如下:

npm ERR! Darwin 15.0.0
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "install" "-g" "bower"
npm ERR! node v4.2.1
npm ERR! npm  v2.14.7
npm ERR! path /usr/local/lib/node_modules/bower
npm ERR! code EACCES
npm ERR! errno -13
npm ERR! syscall rmdir

npm ERR! Error: EACCES: permission denied, rmdir '/usr/local/lib/node_modules/bower'
npm ERR!     at Error (native)
npm ERR!  { [Error: EACCES: permission denied, rmdir '/usr/local/lib/node_modules/bower']
npm ERR!   errno: -13,
npm ERR!   code: 'EACCES',
npm ERR!   syscall: 'rmdir',
npm ERR!   path: '/usr/local/lib/node_modules/bower' }
npm ERR!
npm ERR! Please try running this command again as root/Administrator.
npm ERR! error rolling back Error: EACCES: permission denied, rmdir '/usr/local/lib/node_modules/bower'
npm ERR! error rolling back     at Error (native)
npm ERR! error rolling back  { [Error: EACCES: permission denied, rmdir '/usr/local/lib/node_modules/bower']
npm ERR! error rolling back   errno: -13,
npm ERR! error rolling back   code: 'EACCES',
npm ERR! error rolling back   syscall: 'rmdir',
npm ERR! error rolling back   path: '/usr/local/lib/node_modules/bower' }

npm ERR! Please include the following file with any support request:
npm ERR!     /Users/Kevin/Sites/npm-debug.log

我尝试过:

$ sudo chown -R $(whoami) ~/.npm
chown: /Users/Kevin/.npm/_locks: Operation not permitted
chown: /Users/Kevin/.npm/bower/1.6.3/package/package.json: Operation not permitted
chown: /Users/Kevin/.npm/bower/1.6.3/package: Operation not permitted
chown: /Users/Kevin/.npm/bower/1.6.3/package.tgz: Operation not permitted
chown: /Users/Kevin/.npm/bower/1.6.3: Operation not permitted
chown: /Users/Kevin/.npm/bower: Operation not permitted
chown: /Users/Kevin/.npm/n: Operation not permitted

看来我根本没有权限。 我无法安装任何东西。

我该如何解决这个问题?

【问题讨论】:

  • 你是用什么方式安装的?
  • 我使用下载的 .pkg 安装它,而不是使用自制软件。之后为凉亭“npm install -g bower”
  • 并且“sudo npm install -g bower”有效吗?
  • 没有“sudo npm install -g bower”不起作用
  • 我也从 .pkg 安装并执行了“sudo npm install -g bower”并且工作正常,我也在 OSX El Capitan 上。也许这里没有考虑您之前所做的一些 adicional 步骤?无论如何,对于开发环境,我使用来自 github.com/creationix/nvm 的 nvm,它允许在任何 Node.js 版本之间快速切换。使用git clone方式安装。

标签: node.js macos npm osx-elcapitan


【解决方案1】:

您可以在终端中运行以下命令来修复此权限错误。

sudo chown -R `whoami` ~/.npm
sudo chown -R `whoami` /usr/local/lib/node_modules

那么您将不再需要在任何 npm 安装中使用 sudo。

【讨论】:

    【解决方案2】:

    我找到的唯一解决方案是重新安装 mac OS X El Capitan。 之后就成功了。

    我现在用docker就不会再出现这种问题了。

    【讨论】: