如何将VMware guest驱动程序放入initrd中?

我正试图通过pxe启动Red Hat 5.8。 该盒子是ESX5.0上的一台虚拟机,它具有一个准虚拟SCSI控制器和VMXNET3networking驱动程序。 现在这些驱动程序在RHEL5.8内核中没有默认,所以我在网上执行了一些步骤来创build我自己的initrd.img文件。 这还没有工作,任何有关如何完成这一任务的build议,将不胜感激。 但是,我的问题的主要目的是以下几点:

在我导入的repo中至less有两个可用的initrd.img文件:cobbler / ks_mirror / OEL5.8-x86_64 / isolinux / cobbler / ks_mirror / OEL5.8-x86_64 / images / pxeboot /

我很好奇,明白有什么不同。 一个小小的谎言,我正在使用Oracle Linux …不是由select,而是应该为所有的意图和目的相同。

我还想了解在安装服务器之后在/ boot目录中find的initrd.img文件和在CDROM和/或cobbler存储库中find的文件之间的区别。 如果我从安装了vmwaretools的盒子复制了initrd.img文件,当尝试引导initrd.img文件时,出现内核恐慌。 有一个大小差异,所以我认为,实质上的区别是,一个包含更多的驱动程序,另一个只有驱动程序对服务器重要,但为什么内核恐慌。

我觉得我正在按照Web上的说明来build立或添加更多的驱动程序到我的内核有点盲目,如果我理解我稍微好一些,那么也许我会知道哪里出了问题。

你让自己有点难过 你应该真的使用PVSCSI驱动程序的数据分区和文件系统。 这是一个耻辱,因为驱动程序是EL6的内核。 不过,将vmware-tools安装部分安装在安装后脚本或kickstart脚本中。

我将第二次将vmware-tools安装添加到%post脚本。 这可能是最简单的。 一些testing将validationvmware-tools是否将initrd文件更新为安装的一部分。

另外,mkinitrd只是一个bash脚本。 可以编辑它来手动添加驱动程序到内核。 在之前的项目中遇到的一个例子是Red Hat Bug 570460 。 与提交者的解决方法相比,修补程序只是原始mkinitrd脚本的差异。

话虽如此,操纵mkinitrd不是随随便便的事。 在产品附近的任何位置获取此testing之前,请testing单独VM中的所有更改