修补内核以允许在没有 initrd 的情况下启动

修补内核以允许在没有 initrd 的情况下启动

第一个答案'为什么 Linux 在启动时使用初始 RAM 磁盘?' 声明 initrd/initial ram 文件系统用于提供安装真实根文件系统的驱动程序。它还说它是可能的将这些驱动程序修补到内核中,这样就initrd不需要初始 ram 文件系统,但没有解释如何进行。如何在不借助 的情况下修补内核(最新版本)以在根目录挂载 EXT4 文件系统initrd,该解决方案是否支持UUIDs

答案1

你不需要修补任何东西。您只需要自己配置和编译内核即可。这是高级任务,因此不适合初学者。诀窍是将内核配置为仅支持您的硬件,并将内核中的所有内容编译为模块(至少是启动所需的驱动程序:磁盘控制器、文件系统等)。

有很多教程,介绍如何配置和编译内核

所以只需谷歌“内核编译{您的发行版}”即可。为您的发行版使用正确的教程非常重要。您正在使用的发行版可能期望某些功能仅在“distro”内核中可用,而在“vanilla”内核中不可用。正确的教程将引导您找到正确的来源。

/etc/fstab删除 initrd/initramfs 后,您可以在 GRUB 中使用 UUID ,但不能在 GRUB 中使用。

例如,我使用的是 Gentoo,但从未使用过 initrd/initramfs。每次新内核可用时,我都必须自己配置和编译它。我使用带有root=/dev/sdb4内核参数的 grub,但在 fstab 中我使用 UUID。

相关内容