You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Amazon Linux 2上卸载NPM v10.0.0并降级至兼容版本?

在Amazon Linux 2上降级/移除不兼容的npm版本

针对你的情况,Node v16.20.2与npm v10.0.0不兼容,且npm uninstall v10.0.0命令无效,可通过以下步骤解决:

为什么之前的命令无效?

npm uninstall v10.0.0是错误的命令格式,且npm无法自行卸载当前正在运行的版本。此外,源码编译升级时可能将高版本npm安装到了系统全局路径的优先级位置,覆盖了原Node配套的npm版本。

解决方案步骤

1. 直接降级到兼容版本

Node v16.20.2对应的兼容npm版本是8.x系列,执行以下命令强制安装指定版本:

sudo npm install -g npm@8.19.2

执行完成后运行npm -v,若返回8.19.2则问题解决。

2. 手动清理高版本npm残留(若降级无效)

如果上述命令执行后仍显示npm v10.0.0,说明高版本npm的可执行文件优先级更高,需手动删除:

  • 先查看当前npm的路径:
    which npm
    npm root -g
    
  • 删除高版本的npm可执行文件及全局包目录(根据实际输出调整路径):
    sudo rm -f /usr/local/bin/npm
    sudo rm -f /usr/local/bin/npx
    sudo rm -rf /usr/local/lib/node_modules/npm
    
  • 再次运行npm -v,此时应恢复到Node v16.20.2配套的npm版本。

3. 彻底重置Node与npm(可选)

如果源码编译操作已破坏系统原有的Node环境,可重新安装官方Node v16.20.2包:

  • 卸载现有Node和npm:
    sudo yum remove -y nodejs npm
    
  • 添加NodeSource的Node.js 16.x源(适配Amazon Linux 2):
    sudo curl -sL https://rpm.nodesource.com/setup_16.x | sudo bash -
    
  • 重新安装Node.js:
    sudo yum install -y nodejs
    
  • 验证版本:
    node -v # 应返回v16.20.2
    npm -v # 应返回兼容的8.x版本(如8.19.2)
    

内容的提问来源于stack exchange,提问作者Jonas Salcedo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.11 19:39:57