kali 版本号 (kali1-5) 之间有什么区别?

kali 版本号 (kali1-5) 之间有什么区别?

uname -r我的系统上的输出是4.19.0-kali1-amd64.我注意到在存储库列表有多个linux-image-4.19.0-kali#,每个都有不同的编号,从 kali1 到 kali5。

这个数字有什么意义呢?为什么其中一些号码没有所有版本包?可以换号码吗?

有关更多上下文:我的 vmware-workstation 的最近更新正在我的系统上查找,linux-headers-4.19.0-kali1-amd64但在存储库中找不到这些。我可以找到 kali3、4 和 5 的这些图像。

答案1

它是从 Debian 复制的。在 Debian 上,数字发生变化,例如从4.19.0-4-amd644.19.0-5-amd64意味着打包器声明(内部内核)ABI 发生变化,需要重新编译外部模块等。当没有进行 ABI 更改时,内核更新将在之前的版本上完成,并且其所有模块将更新到较新的版本。虽然需要重新启动才能使用新内核,但即使以前未加载的模块也可以在新版本中使用。外部模块不会看到差异,因为 ABI 保持不变。

所以假设你有这个模块nat-rtsp-dkms需要像任何 DKMS 模块一样从源代码构建。如果内核升级被认为不会破坏 ABI,则无需重新构建此模块。如果现在升级被认为破坏了 ABI,则名称的更改(由元包的依赖关系暗示)linux-image-amd64)将安装新的内核版本,这将触发此外部模块的重新编译。这同样适用于 VMware 的外部内核模块。

从最近的linux-image-amd64变更日志:

linux-latest (105+kali1) kali-experimental; urgency=medium

  * Sync with Debian
  * Rebuild for 4.19.0-kali5

 -- Sophie Brun <[email protected]>  Thu, 09 May 2019 11:01:17 +0200

linux-latest (105) unstable; urgency=medium

  * Update to 4.19.0-5

 -- Ben Hutchings <[email protected]>  Tue, 07 May 2019 16:33:50 +0100

视实际情况而定linux-image-4.19.0-kali5-amd64,其变更日志记录了 ABI 变更,以及有时解释了原因。以下是最后一部分中对 ABI 2 更改的一些摘录和解释:

linux (4.19.37-2kali1) kali-experimental; urgency=medium

  * Sync with Debian

 -- Sophie Brun <[email protected]>  Wed, 15 May 2019 09:08:08 +0200

linux (4.19.37-2) unstable; urgency=high

  * debian/bin: Fix Python static checker regressions (Closes: #928618)

[...]

linux (4.19.37-1kali1) kali-experimental; urgency=medium

  * Sync with Debian

 -- Sophie Brun <[email protected]>  Thu, 09 May 2019 10:41:49 +0200

linux (4.19.37-1) unstable; urgency=medium

[...]

 [ Ben Hutchings ]
  * debian/bin/abiupdate.py: Automatically select the correct archive to fetch
    from
  * debian/bin/abiupdate.py: Change default URLs to use https: scheme
  * [powerpc*] vdso: Make vdso32 installation conditional in vdso_install
    (Closes: #785065)
  * Bump ABI to 5

[...]

linux (4.19.16-1kali1) kali-experimental; urgency=medium

  * Sync with Debian

 -- Sophie Brun <[email protected]>  Mon, 21 Jan 2019 13:41:42 +0100

linux (4.19.16-1) unstable; urgency=medium

[...]

  [ Yves-Alexis Perez ]
  * Bump ABI to 2 because of changes in struct sock_common from 60f05dddf1eb

注意linux-标头-*软件包来自同一来源,因此与linux-图像-*包。通常需要更换相关的linux-标头-*包使其与目标内核匹配,以便能够成功构建外部模块。对于非打包的外部模块也是如此(其中一些模块,可能是 VMware 的,只查看当前运行的内核而不是目标内核)。

如果 Kali 包再也找不到了(这在 Debian 上不会发生,因为快照.debian.org),您可以将内核升级到标头和内核都可用的通用版本:您应该安装两者linux-image-4.19.0-kali5-amd64linux-headers-4.19.0-kali5-amd64(并且可能在构建之前重新启动,以使 VMware 满意)。如果您构建自己的内核,请不要忘记保留关联的linux-标头-同时构建的包。

尽管如此,如果在重新启动到较新的内核后,VMware 确实坚持使用特定的 kali1,而不是与正在运行的内核匹配的 kali1,那么您就不走运了,必须等待 VMware 的更新或找到解决方法。

相关内容