我暂停了内核,因此在更新时,直到昨天才将较新的内核版本标记为可安装。这是一个安全更新,所以我知道建议进行此更新,但问题是关于暂停软件包。注意:内核已暂停一段时间了。
什么原因导致软件包失控?如果它正在阻止更新,为什么它会失控?
这次,我把所有东西都加上版本号和通用字样。
linux-generic set on hold.
linux-headers-4.4.0-21 set on hold.
linux-headers-4.4.0-21-generic set on hold.
linux-headers-generic set on hold.
linux-image-4.4.0-21-generic set on hold.
linux-image-extra-4.4.0-21-generic set on hold.
linux-image-generic set on hold.
linux-tools-4.4.0-21 set on hold.
linux-tools-4.4.0-21-generic set on hold.
答案1
如果你需要坚持使用特定的内核包版本,你需要坚持全部这些:
linux-generic
linux-image-generic
linux-headers-generic
linux-image-X.Y.Z-W-generic
linux-image-extra-X.Y.Z-W-generic
linux-headers-X.Y.Z-W-generic
适合的 X、Y、Z 和 W。此处,软件包的实际版本将类似于X.Y.Z-W.V
(4.4.0-21.37
例如)。此处,XYZ 是上游基本内核版本,W 是 ABI 编号,V 是内部版本号(请参阅Ubuntu 维基)。
如果没有保留元包,但保留了真实包:
- 如果 W 被替换,实际软件包名称将更改为新版本。元软件包将升级,安装新内核,因为此操作不涉及现有的
linux-{image,image-extra,headers}-X.Y.Z-W-generic
包。 - 如果 V 升级而 W 未升级,则软件包名称保持不变,因此现有软件包
linux-{image,image-extra,headers}-X.Y.Z-W-generic
会因被搁置而无法升级。因此,元软件包也不会升级。
如果元软件包被保留,而真实软件包没有被保留:
- 如果 W 被碰到,则不会安装新的内核,因为元包的依赖关系更改由于被保留而不会生效。
- 如果 V 被提升而 W 没有被提升,那么将会安装新的内核包,但它们将保留与旧包的 ABI 兼容性。
您持有的是真正的软件包,而不是元软件包。在最后一张图片中,您可以清楚地看到 W 已从 21 增加到 22,因此软件包名称已更改,旧的持有不再重要。