Debian

自定義建構的核心在預置安裝期間可能無法在 amd64 上使用

  • May 16, 2019

由於我使用的硬體,我需要一個比 buster 附帶的核心(準確地說是 5.1.x)更新的核心。

建構該核心沒有任何問題 8 使用make deb-pkg) 建構它,即使我在實時系統上安裝核心包,它也能正常工作。

此外,當我修改 ISO 並將該核心包添加到 ISO 的包 repo 中並將該 CD 添加為本地包源時,我也可以從那里安裝它,所以我知道我正確生成了包索引。

但是,當我使用d-i base-installer/kernel/image預種子文件中的設置並將其設置為 時linux-image-5.1.2,安裝失敗並顯示可愛的消息:

Cannot install kernel
The installer cannot find a suitable kernel package to install.

經過進一步檢查syslog,我發現了這條消息:

May 16 13:43:22 base-installer: info: kernel linux-image-5.1.2 not usable on amd64
May 16 13:43:22 base-installer: info: Found kernels ''
May 16 13:43:22 base-installer: error: exiting on error base-installer/kernel/no-kernels-found

(此處的完整系統日誌:https ://gist.github.com/BrainStone/0a0b3ea476ee875b2cabdd67685264b4 )

dpkg --info包裝上給了我這個資訊:

new Debian package, version 2.0.
size 3937412 bytes: control archive=1536 bytes.
   348 bytes,    12 lines      control              
  2073 bytes,    28 lines      md5sums              
   281 bytes,    12 lines   *  postinst             #!/bin/sh
   277 bytes,    12 lines   *  postrm               #!/bin/sh
   279 bytes,    12 lines   *  preinst              #!/bin/sh
   275 bytes,    12 lines   *  prerm                #!/bin/sh
Package: linux-image-5.1.2
Source: linux-5.1.2
Version: 5.1.2-1
Architecture: amd64
Maintainer: root <root@e2c42c34410b>
Installed-Size: 5943
Section: kernel
Priority: optional
Homepage: http://www.kernel.org/
Description: Linux kernel, version 5.1.2
This package contains the Linux kernel, modules and corresponding other
files, version: 5.1.2.

所以它肯定是為amd64建構的。

我猜我已經非常接近解決方案了,並且不能失去超過 1-2 行配置或腳本。但我無法弄清楚我做錯了什麼。

失敗的檢查在這裡:您需要-amd64 在您的包名稱中包含(以類似的方式linux-image-5.0.0-trunk-amd64)。更準確地說,你的包名必須以 結尾-amd64,或者包含-amd64-

一種方法是LOCALVERSION在核心配置的“正常設置”部分中設置 ,。

引用自:https://unix.stackexchange.com/questions/519287