如何对内核 ABI 版本和匹配的软件包存储库进行版本控制?

如何对内核 ABI 版本和匹配的软件包存储库进行版本控制?

我需要能够在 ABI 版本级别对 Ubuntu LTS 内核版本进行版本控制,并为当前和将来安装的给定内核提供匹配的软件包。

鉴于 Ubuntu 内核版本编号方案:

[基础内核版本]-[ABI 编号].[上传编号]-[风格]

第1部分

给定内核 ABI 版本的内核在 LTS 版本中支持多长时间?例如,创建 Amazon AWS 16.04 映像时,内核当前为 4.4.0-36。一般来说,我应该预计 -36 版本会保持可用多长时间?可用是指我可以从官方 Ubuntu 下载站点获取映像并安装该操作系统/内核版本的软件包,而无需降级软件包。

第2部分

假设我希望能够支持给定的内核 ABI 级别,并且比互联网上可用的 ABI 版本更长时间,我需要做什么来镜像软件包存储库,以便我可以在我的系统上安装软件包?是否有关于如何创建软件包本地镜像的指南,以便我可以针对给定的内核 ABI 维护版本控制的操作系统基线?我理解,一旦内核被取代,就很难获取当前映像并将其降级到所需的基线,因为软件包存储库基线不会存档。

答案1

第1部分

给定内核 ABI 版本的内核在 LTS 版本中支持多长时间?

没有最短或最长时间 - 安全更新可能会强制 ABI 更改,因为这些是不可预测的......

一般来说,-36 版本应该可以持续使用多久?所谓可用,是指我可以从官方 Ubuntu 下载站点获取映像并安装该操作系统/内核版本的软件包无需降级软件包[强调添加]。

您不能有任何期望——Ubuntu 不会为您提供那种保证。

如果您可以接受手动降级,看起来 Xenial 的旧(安全)内核版本将在整个发行版的生命周期内保留:

linux-image-4.4.0-36-generic_4.4.0-36.55_amd64.deb  2016-08-15 15:44    18M

(从http://security.ubuntu.com/ubuntu/pool/main/l/linux/)。最终,Xenial 将会 EOL,届时您将必须开始手动更改 apt URL 以转到 old-releases.ubuntu.com 。

第2部分

假设我希望能够支持内核的给定 ABI 级别,并且支持时间比互联网上可用的 ABI 版本更长,我需要做什么来镜像软件包存储库,以便我可以在我的系统上安装软件包?

我认为您至少可以通过 apt 降级内核版本,因为看起来软件包本身并没有被删除,但您最终可能会处于不受支持的状态(较新的用户空间,较旧的内核)。

相关内容