node.js - sudo npm i npm 或 sudo npm install npm@latest -g 抛出 EACCES:permission denied 错误
问题描述
我有 npm v 5.6 并且我安装了节点版本 10.1,因此当前的 npm 不支持节点版本,同时更新 npm 我收到 EACCES 权限被拒绝错误。我尝试删除 npm 目录并通过几个命令更新 npm 版本卡在 5.6。帮助!!使用 Ubuntu v16.04 LTS。我也尝试安装不同的 nodejs 版本,但它也没有改变 npm 版本(npm v5.6)。
解决方案
我建议使用版本管理器(例如nvm)安装多个版本的 Node.js 并在它们之间随意切换。
首先,确保您已安装git
并安装了build-essential
软件包:
sudo apt-get update
sudo apt-get install build-essential git
然后使用 cURL 安装 nvm(在终端中运行此命令):
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash
这会将 nvm 存储库克隆~/.nvm
到您的 bash 配置文件,并对您的配置文件进行所需的更改,以便您可以从终端中的任何位置使用 nvm。
重新加载您的 bash 配置文件:
source ~/.bashrc
并通过键入以下内容验证安装:
command -v nvm
如果安装成功,它应该输出'nvm'。
(如果这不起作用,只需关闭,然后重新打开终端)
就是这样,nvm 已安装并可以使用了。
现在,要下载、编译和安装最新版本的 Node,请从终端运行以下命令:
nvm install node
然后在任何新的 shell中使用已安装的版本:
nvm use node
最后,验证是否使用了正确的版本:
node -v
=> 10.5.0
使用 nvm 还有很多其他功能,例如安装多个 Node 版本。
您可以在此处阅读更多相关信息:https ://www.sitepoint.com/quick-tip-multiple-versions-node-nvm/
HTH
推荐阅读
- c - gcc 无法识别某些 SDL 函数
- pyspark - PySpark:Dataframe:Numeric + Null 列值导致 NULL 而不是数值
- javascript - 无法将工具提示添加到我的 d3 树节点
- view - 如何将此子查询重新创建到视图
- c++ - 逗号分隔的字符串之和,如 4,1,3 由 O(n)
- visual-studio - 在 VS2017 中运行调试会话之前,如何在监视窗口中配置监视变量?
- excel - DAX 计算年初至今 - 年份到上个月(年份变化)
- android - 如何在 React Native WebView 中触发嵌入式 YouTube 视频播放的全屏模式?
- c# - 有没有办法更新表上的任何列组合?
- python - 使用python pandas读取已分成多行的行