为自定义内核制作可启动随身碟

为自定义内核制作可启动随身碟

我阅读了教程来制作一个简约的自定义内核这里并且能够按照教程中的说明通过使用 GRUB 作为引导加载程序的虚拟机来启动它。

我认为如果我可以使用可启动随身碟在裸硬件上做同样的事情会更有趣。也就是说,使用 GRUB、pendrive 和我的内核可执行文件形成一个可启动的 pendrive,然后从这个 pendrive 启动到内核。

Q1.我想过使用制作可启动 Linux pendrive 的正常过程,但我的内核并不是真正的 iso 映像,它是 elf 格式的可执行文件。如果我以某种方式将可执行文件转换为 iso 格式,正常方法是否有效?

Q2。还有其他想法/链接到一些资源我应该如何进行?

附:它本身不是 Linux 内核,它绝对是最小的内核,没有文件系统。只需启动,在控制台上打印一些内容并可以处理键盘事件,就是这样。

答案1

从启动的角度来看,内核文件本身只是提供给 grub 的一个配置选项。只要 grub 可以找到内核,就可以开始了。

但是,您需要一些东西用作 rootfs,因此 USB 密钥上的分区或 dd 映像是有意义的,然后将内核文件存储在其中。您甚至可以将其与所有 grub 内容一起放入 /boot 中。因此,至少您需要在 USB 密钥上设置 mbr 来启动,以及包含 grub 配置的文件系统...(我在谷歌上搜索,并看到 fat 和 ext 用于 /boot 的示例 - 我知道大多数 USB 启动密钥工具使用 fat 作为基础,所以我建议 - 但我认为 ext 也应该工作。)有一些信息这里以 ubuntu 为例。我认为在你的位置上,我会使用这些工具创建一个可启动的 USB,然后根据我的需要对其进行修改 - 这样我就可以安装 grub,并为我处理好 mbr 的内容。

归根结底,我认为这是如何在 USB 密钥上启动并运行 grub 的问题,之后就只是 grub 配置了链接过去帮助过我。

答案2

关于 Debian 的实时构建系统。

--linux-packagelinux-kernel.deb 上有一个选项,您可以指定自己的内核,只需将其打包为 Debian 格式即可。

相关内容