构建内核后未找到 vmlinuz 和 initrd?

Amu*_*umu 10 linux compiling kernel initrd

使用 make 配置和构建内核后,为什么我没有vmlinuz-<version>-default.imgand initrd-<version>.img,但只有一个巨大的vmlinux二进制文件(~150MB)?

njs*_*jsg 10

压缩后的图像在 下arch/xxx/boot/xxx拱门在哪里。例如,对于x86amd64,我有在压缩图像/usr/src/linux/arch/x86/boot/bzImage,沿/usr/src/linux/vmlinux

如果您仍然没有该图像,请检查是否bzip2已安装并正常工作(但我想如果这是问题所在,您会收到一条描述性错误消息,例如“未找到 bzip2”)。

此外,内核配置允许您选择压缩方法,因此如果您更改该内核设置,实际文件名和压缩算法可能会有所不同。

正如其他人已经提到的,initrds不是由 linux 编译过程生成的,而是由其他工具生成的。请注意,除非出于某种原因,您需要外部文件(例如,您需要模块或 udev 来识别或挂载/),否则您不需要 initrd 来引导。