![如何在 Fedora 上将 npm 更新到最新版本](https://linux22.com/image/134609/%E5%A6%82%E4%BD%95%E5%9C%A8%20Fedora%20%E4%B8%8A%E5%B0%86%20npm%20%E6%9B%B4%E6%96%B0%E5%88%B0%E6%9C%80%E6%96%B0%E7%89%88%E6%9C%AC.png)
我尝试运行这个:
sudo npm install npm@latest -g
去测试npm audit
,但是这个命令失败了,我收到错误:
npm ERR! path /usr/lib/node_modules/npm/node_modules/fs-write-stream-atomic
npm ERR! code EEXIST
npm ERR! errno -17
npm ERR! syscall mkdir
npm ERR! EEXIST: file already exists, mkdir '/usr/lib/node_modules/npm/node_modules/fs-write-stream-atomic'
npm ERR! File exists: /usr/lib/node_modules/npm/node_modules/fs-write-stream-atomic
npm ERR! Move it away, and try again.
npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2018-06-04T16_50_00_242Z-debug.log
要恢复状态,我需要使用 dnf 安装 npm (我需要删除npm
then/usr/lib/node_modules
并再次安装 npm)。
如果我移动文件(它是符号链接),则会出现错误:
npm ERR! code MODULE_NOT_FOUND
npm ERR! Cannot find module 'fs-write-stream-atomic'
npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2018-06-04T18_09_09_479Z-debug.log
如何在 Fedora 上安装 npm 6?
答案1
答案2
另外,您可能需要考虑asdf
。它基于插件系统并安装 - 某种程度。
[gorre@uplink ~]$ asdf plugin-add nodejs
[gorre@uplink ~]$ bash ~/.asdf/plugins/nodejs/bin/import-release-team-keyring
[gorre@uplink ~]$ asdf install nodejs <version_here>
[gorre@uplink ~]$ asdf global nodejs <version_here>
笔记:所有这些,前提是您
asdf
之前安装过。
local
您可以安装不同的版本,并通过在您想要的特定目录中指定来引用它们。基本原理是它将创建.tool-versions
引用该版本的文件,覆盖其他设置。
这里的好处是asdf
不仅支持 Node.js,还支持许多其他语言/平台/工具包,并且在某种程度上保持了nvm
.