Mac设备npm更新失败求助:执行npm update -g出现路径错误
解决Mac上npm 5.6.0更新时的路径权限报错问题
嘿,我之前在Mac上用旧版本npm升级时也碰到过一模一样的路径权限报错,给你几个亲测有效的解决办法:
方案一:用nvm管理Node.js和npm(最推荐,一劳永逸)
- 先安装nvm(它会把Node相关文件放在你的用户目录下,彻底避开系统权限问题)
- 安装完成后重启终端,执行
nvm install node,这会自动安装最新版的Node.js以及配套的最新版npm - 之后再更新npm就直接跑
npm install -g npm就行,再也不会有权限报错
方案二:修复/usr/local目录权限
- 先给当前用户赋予/usr/local/lib/node_modules目录的所有权,执行:
sudo chown -R $(whoami) /usr/local/lib/node_modules - 然后直接安装最新版npm(旧版本npm的
npm update -g命令容易出问题,别用它),执行:npm install -g npm@latest - 最后用
npm -v确认版本已经更新成功
方案三:临时用sudo提权更新(不推荐,谨慎使用)
- 如果你不想改权限也不想装nvm,可以临时用管理员权限执行更新:
sudo npm install -g npm@latest - 输入你的Mac密码后等待更新完成就行,但这个方法可能会导致后续安装其他全局npm包时出现权限混乱,所以尽量不用
另外提一句,旧版本的npm(比如你用的5.6.0)的npm update -g命令本身就有不少bug,直接指定安装最新版npm是更靠谱的做法。
内容的提问来源于stack exchange,提问作者Anurag Ranjan
相关产品推荐
相关产品推荐

