目录
在全局安装包时解决 EACCES 权限错误
目录
如果您在尝试 全局安装包 时看到 EACCES
错误,您可以
-
使用 Node 版本管理器重新安装 npm(推荐),
或
-
手动更改 npm 的默认目录
使用 Node 版本管理器重新安装 npm
这是避免权限问题的最佳方法。要使用 Node 版本管理器重新安装 npm,请按照 "下载和安装 Node.js 和 npm" 中的步骤操作。在安装 Node 版本管理器之前,您不需要删除当前版本的 npm 或 Node.js。
手动更改 npm 的默认目录
注意:本节内容不适用于 Microsoft Windows。
为了最大程度地减少出现权限错误的可能性,您可以配置 npm 以使用不同的目录。在本例中,您将在主目录中创建一个隐藏目录并使用它。
-
备份您的计算机。
-
在命令行中,在您的主目录中,为全局安装创建一个目录
mkdir ~/.npm-global
-
配置 npm 以使用新目录路径
npm config set prefix '~/.npm-global'
-
在您喜欢的文本编辑器中,打开或创建一个
~/.profile
文件并添加以下行export PATH=~/.npm-global/bin:$PATH
-
在命令行中,更新您的系统变量
source ~/.profile
-
要测试您的新配置,请在不使用
sudo
的情况下全局安装一个包npm install -g jshint
您也可以使用相应的环境变量来代替步骤 3-5(例如,如果您不想修改 ~/.profile
)
NPM_CONFIG_PREFIX=~/.npm-global
npx:运行全局命令的替代方法
如果您使用的是 npm 5.2 或更高版本,您可能需要考虑将 npx 作为运行全局命令的替代方法,尤其是当您只是偶尔需要一个命令时。有关更多信息,请参阅 这篇关于 npx 的文章。