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

Linux系统无法更新npm且执行npm命令报错cb.apply is not a function如何解决

问题原因

你遇到的cb.apply is not a function报错是Node.js v14和系统残留的旧npm v3版本不兼容导致的:Node.js 14最低要求配套npm v6及以上版本,旧版npm的底层API无法适配高版本Node.js的运行环境。从报错日志看你的Node.js安装在/usr/local/bin/路径,npm安装在/usr/bin/路径,属于两个不同的安装源,版本没有对齐,你重装Node.js后问题仍存在,是因为旧版npm的全局执行文件、依赖目录、缓存没有被同步清理,残留的旧版本优先被系统调用。

解决步骤

  • 第一步:彻底清理所有旧npm和Node.js残留文件
sudo rm -rf /usr/bin/npm /usr/local/bin/npm /usr/local/lib/node_modules ~/.npm

如果是通过apt/yum等包管理器安装的Node.js,先执行卸载命令再清理残留:

# Debian/Ubuntu系操作系统
sudo apt remove --purge nodejs npm -y
sudo apt autoremove -y

# CentOS/RHEL系操作系统
sudo yum remove nodejs npm -y
  • 第二步:重新安装匹配的Node.js版本
    直接安装Node.js 14对应的LTS版本,官方安装包会自带适配的npm v6版本,安装完成后执行以下命令确认版本正常即可:
node -v
npm -v

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 04:39:03