我正在使用 Ubuntu 16.04 LTS 并安装 Node + npm。我知道如果没有
sudo
我就无法运行 npm 命令。然后我更改我的目录并授予其从此链接提供的权限https://docs.npmjs.com/getting-started/fixing-npm-permissions。
但是当我尝试运行 npm install npm@latest -g
时,npm 将更新用户权限赋予的 npm 版本,因此当我运行 npm -v
时,它实际上会显示 root 权限 npm 的版本,而不是用户权限赋予的 npm 版本。我想知道是否可以将我的 npm 全局路径更改为给定 npm 的权限,或者还有其他解决方案吗?
nb:我尝试运行 root-permission npm (我从 PATH 中删除用户权限 npm 文件夹)来安装最新的 npm 版本,但它使用 root-permission 将最新的 npm 安装到我的用户权限 npm 目录中,这给了我更多问题。
解决权限问题,帮助我们安装whithdout sudo:
在命令行的主目录中,创建一个用于全局安装的目录: mkdir -p ~/.npm-global/lib
配置 npm 以使用新的目录路径: npm 配置设置前缀 '~/.npm-global'
在您喜欢的文本编辑器中,打开或创建 ~/.profile 文件并添加以下行: 导出 PATH=~/.npm-global/bin:$PATH
在命令行上,更新系统变量: 来源~/.profile
要测试您的新配置,请在不使用 sudo 的情况下全局安装软件包: npm install -g jshint