我的npm已经过时了,我无法更新。我怎样才能解决这个问题?

时间:2016-03-20 00:09:11

标签: node.js

我的系统上有节点和npm一段时间,但我暂时没有使用它们,它们似乎已经坏了。

今天我想回到它,在尝试安装自耕农时,我得到了一条消息,"你的npm版本已经过时了。"和建议运行npm install -g npm

所以我做到了,并且犯了更多错误:

npm ERR! Darwin 15.3.0
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "install" "-g" "npm"
npm ERR! node v4.4.0
npm ERR! npm  v2.14.20
npm ERR! path /usr/local/lib/node_modules/npm/.mailmap
npm ERR! code EACCES
npm ERR! errno -13
npm ERR! syscall unlink

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

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

我接着尝试了这个

// ♥ unlink '/usr/local/lib/node_modules/npm/.mailmap'
unlink: /usr/local/lib/node_modules/npm/.mailmap: Permission denied

老实说,我不记得我是否用Homebrew安装了节点,或者还有什么东西在这个东西上。我想在某些时候我安装了一个节点版本管理器,但我可能是错的。此外,我总是对说使用sudo的说明感到紧张。我永远不会记得使用sudo的说明我不应该遵循。

有什么想法吗?

2 个答案:

答案 0 :(得分:2)

使用sudo

sudo npm install -g npm

答案 1 :(得分:1)

全套。我刚刚从John Papa跟踪these instructions,现在正在工作。