You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何解决npm全局安装pnpm时出现的EACCES权限拒绝错误

报错原因

这是Linux/macOS类系统下npm全局安装工具的权限不足问题,本质是当前普通用户没有系统级目录/usr/bin的写入权限,npm全局安装pnpm时需要在该目录下创建软链接指向pnpm的执行文件,权限校验不通过就会触发EACCES报错。

完整报错翻译

npm ERR! 错误码 EACCES
npm ERR! 系统调用 symlink(创建软链接)
npm ERR! 原路径 ../lib/node_modules/pnpm/bin/pnpm.cjs
npm ERR! 目标路径 /usr/bin/pnpm
npm ERR! 错误编号 -13
npm ERR! 错误:EACCES: 权限不足,无法创建软链接 '../lib/node_modules/pnpm/bin/pnpm.cjs' -> '/usr/bin/pnpm'
npm ERR! 该操作被你的操作系统拒绝,大概率是当前用户没有对应文件的访问权限
npm ERR! 如果你确认是权限问题,请检查目标文件及所属目录的权限,或使用root/管理员身份重新运行命令

解决方案

方案1:临时提权安装(适合快速解决单次安装需求)

直接在原命令前加sudo提权执行即可:

sudo npm install -g pnpm

执行后输入当前用户的管理员密码即可完成安装。
注意:不建议长期使用sudo执行npm全局安装命令,可能会带来后续的文件权限冲突问题

方案2:修改npm全局安装路径(长期安全方案,无需反复提权)

  • 第一步:创建当前用户专属的npm全局包存储目录
    mkdir -p ~/.npm-global
  • 第二步:配置npm使用该目录作为全局安装路径
    npm config set prefix '~/.npm-global'
  • 第三步:将全局包的执行文件路径添加到系统环境变量
    如果你使用bash终端:
    echo 'export PATH=~/.npm-global/bin:$PATH' >> ~/.bashrc
    如果你使用zsh终端:
    echo 'export PATH=~/.npm-global/bin:$PATH' >> ~/.zshrc
  • 第四步:刷新终端环境变量配置
    对应bash终端执行:source ~/.bashrc
    对应zsh终端执行:source ~/.zshrc
  • 第五步:重新执行pnpm全局安装命令即可,无需加sudo
    npm install -g pnpm

内容的提问来源于stack exchange,提问作者Afzal Ansari

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 22:45:03