Mac终端安装npm时出现zsh: permission denied错误,如何解决?
解决Mac终端安装npm提示zsh: permission denied的问题
先看终端报错的具体情况:
下面是几种可行的解决办法:
方法一:修复npm全局目录权限(推荐)
- 先查看npm全局包的默认安装目录:
npm config get prefix - 如果返回
/usr/local,执行命令修改目录权限,把权限转给自己的用户:sudo chown -R $(whoami) $(npm config get prefix)/{lib/node_modules,bin,share} - 改完之后直接重新运行npm安装命令即可,无需加sudo
方法二:用nvm管理Node.js和npm(彻底解决权限问题)
- 安装nvm:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash - 重启终端,安装长期支持版的Node.js:
nvm install --lts - 切换到刚安装的版本:
nvm use --lts - 之后用npm安装任何包都不会再碰到权限问题,还能方便切换不同Node版本
方法三:临时用sudo安装(不推荐)
- 如果只是临时装某个包,可以临时加sudo:
sudo npm install -g <你的包名> - 输入Mac用户密码后执行,但长期这么用会导致后续很多文件权限混乱,尽量别用
内容的提问来源于stack exchange,提问作者dc56
相关产品推荐
相关产品推荐

