跳到主要内容
常见问题 aptUbuntu依赖冲突

Ubuntu 某些包一直升级不了(依赖冲突)?

包反复被 hold 或依赖冲突升不上去:hold 标记是显性原因,但底下多半是源指向旧版本被卡住。本文给出查 hold、溯源、解除的顺序。

发布于 2026/11/11 所属频道 Ubuntu 与 Debian

简短答案

包升不上去先查两件事:是否有显式 hold 标记、依赖是否指向旧源。apt-mark showhold 查 hold 一目了然;确认无 hold 后 sudo apt update 刷新索引,再看 apt-cache policy 该包能到的最高版本——若被锁在旧版,多半是源指向了已退役的旧版本,切回当前源即可。

现象对照

现象 判断
单包不动、其它正常 多半有 hold 标记
一片包全卡在旧版 源指向旧版本/退役版
依赖循环报错 某包需要更高版本的底层依赖

排查步骤

sudo apt-mark showhold                  # 列出被 hold 的包
sudo apt-mark unhold <包名>             # 解除
sudo apt update
sudo apt-cache policy <包名>            # 看可到的版本与来源
sudo apt install <包名>

源指向旧版的现场,把 apt 源切回 Ubuntu 26.04 桌面版 对应的当前源再 update;服务器基线同见 Ubuntu 服务器版 条目,源体系说明见 Ubuntu 发行条目。

操作小结

  1. 先 apt-mark showhold,hold 是最高优先级显性原因
  2. apt-cache policy 判断能否升到新版
  3. 卡旧版就核对源指向,切回当前源再 update
  4. 解除 hold 后装回目标版本验证

相关链接

本文内容基于公开资料整理,仅供参考;涉及授权与合规的操作请以厂商官方文档为准。

相关推荐下载

按本文主题匹配的官方原版镜像条目

配套 PE 工具

制作启动盘、备份数据、修复引导

其他常见问题

同一集合内的相近主题,按标签与关键词匹配