如何修复 npm 更新错误?(# npm install npm@latest -g)

Ped*_*nia 8 node.js npm

如何修复 npm 更新错误?我以 root 身份运行

# npm install npm@latest -g

usr/lib
??? (empty)

npm ERR! Linux 4.10.14-200.fc25.x86_64
npm ERR! argv "/usr/bin/node" "/usr/bin/npm" "install" "npm@latest" "-g"
npm ERR! node v6.10.2
npm ERR! npm  v3.10.10
npm ERR! path /usr/lib/node_modules/npm/node_modules/node-gyp
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/node-gyp'
npm ERR! File exists: /usr/lib/node_modules/npm/node_modules/node-gyp
npm ERR! Move it away, and try again.

npm ERR! Please include the following file with any support request:
npm ERR!     /root/npm-debug.log
npm ERR! code 1
Run Code Online (Sandbox Code Playgroud)

最终没有 npm。

日志文件位于https://www.dropbox.com/s/2maxolbxjlnnp7c/npm-debug_error.log.txt?dl=0

我的节点版本是 6.10.2,使用 Fedora 核心 25 64 位。npm 版本是 3.10.10

我还在https://github.com/npm/registry/issues/168上创建了一个问题

现在,未安装 npm:

新产品经理

-bash: /usr/bin/npm: 没有那个文件或目录

我明天正在关注https://github.com/brock/node-reinstall,如果没有找到其他建议,尝试卸载完整节点并重新安装。

我运行这个 npm 更新,因为它是在聚合物 2.0 中安装聚合物 cli 的建议的第一步

https://www.polymer-project.org/2.0/docs/tools/polymer-cli

Dam*_*ero 6

首先,我不建议以 root 用户身份运行 npm 命令,请在此处查看此问题和答案以获取建议,以 root 身份运行 npm 可能会导致您将来出现问题。

您可以使用 npm 更新 npm,如下所示:

npm i -g npm-upgrade
Run Code Online (Sandbox Code Playgroud)

如果您有权限错误,请在此处查看如何修复它们

现在对于您的特定错误,您似乎必须删除该文件夹:

/usr/lib/node_modules/npm/node_modules/node-gyp
Run Code Online (Sandbox Code Playgroud)

我建议删除您的节点并重新安装。


Ped*_*nia 6

我解决了这个问题,以 root 身份运行

# dnf remove nodejs
# dnf install nodejs
Run Code Online (Sandbox Code Playgroud)


Yus*_*bek 5

用 sudo 试试

sudo npm i -g npm@latest
Run Code Online (Sandbox Code Playgroud)