update-initramfs 在哪里查找内核版本?

Zan*_*nna 16 filesystem kernel initramfs

我需要重新生成 initrd。这样做:

update-initramfs -u -k all
Run Code Online (Sandbox Code Playgroud)

为我编译的内核抛出错误,然后删除了一段时间(因为update-initramfs找不到/lib/modules我当然删除的目录)。

我以为我已经通过删除& running中/boot和目录中的所有条目来完全删除内核(如本答案中所示),但显然在某处我应该清理它的痕迹。/lib/modulessudo update-grub

我读了这个并深入研究,/usr/share/initramfs-tools但我无法弄清楚。

man update-initramfs我看到:

对版本字符串使用“all”指定 update-initramfs 为所有内核版本执行所选操作,这些版本已为 update-initramfs 所知。

但是它怎么知道它们呢?在哪里update-initramfs寻找内核版本?

注意:许多个月后......我将这个问题的答案添加到了的标签维基

tho*_*hom 18

我有同样的问题,因为你,我还以为我已经完全通过删除所有条目删除的内核/boot和目录/lib/modules和更新GRUB,但我发现,使用由一个目录update-initramfs来跟踪内核:

/var/lib/initramfs-tools
Run Code Online (Sandbox Code Playgroud)

  • `update-initramfs -d -k <version>` 将一次性删除 `/var/lib/initramfs-tools` 中的条目和 `/boot` 中的映像,仅供参考:) (2认同)