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

Ubuntu系统安装npm失败,提示“you have held broken packages”

解决sudo apt install npm提示"you have held broken packages"问题

1. 检查并解除锁定的包

先查看系统中被锁定的包:
dpkg --get-selections | grep hold
如果输出中包含npm或相关依赖包,执行以下命令解除锁定:
echo "npm install" | sudo dpkg --set-selections

2. 修复系统依赖

运行以下命令修复系统中损坏的依赖关系:
sudo apt update
sudo apt install -f
sudo dpkg --configure -a

3. 清理缓存后重试安装

清理APT缓存中损坏的包文件:
sudo apt clean
sudo apt autoclean
然后再次尝试安装npm:
sudo apt install npm

4. 解决版本兼容性问题

如果已安装的Node.js和系统源中的npm版本不兼容,会导致依赖冲突。可以先移除现有Node.js和npm,再通过NodeSource源安装匹配的版本:

sudo apt purge nodejs npm -y
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
sudo apt install nodejs -y

(注意:将20.x替换为你需要的Node.js版本,比如18.x或16.x)

5. 指定兼容版本安装npm

如果不想重新安装Node.js,可以查看系统源中可用的npm版本,选择与当前Node.js兼容的版本安装:
查看可用版本:
apt-cache show npm | grep Version
指定版本安装:
sudo apt install npm=具体版本号

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.26 22:52:06