mkinitrd 预加载 virtualBox LSI SAS 存储驱动程序

mkinitrd 预加载 virtualBox LSI SAS 存储驱动程序

我正在尝试编译自己的内核 (2.6.9)。
编译和构建方面一切正常,但是...

重新启动到新内核后 - 无法加载 LVM(VolumeGroup00)。

我怀疑 mkinitrd 没有预加载 VirtualBox 的 LSI SAS 存储的相关驱动程序。

我正在使用 RHel 进行该过程。

有人知道我需要向 mkinitrd 添加哪些参数才能使其加载正确的驱动程序吗?

我尝试添加“--preload mptbase --preload mptscsih” - 但都没有帮助。

如果您能提及我应该添加到 .config 中的驱动程序,我将不胜感激(我添加了“常规”驱动程序,但不确定是否足够)

谢谢


我会更具体一点:

运行 mkinitrd 后(使用我想到的任意参数组合)

输出为:

Uncompressing Linux... Ok, booting the kernel.
audit(1410035747.4294966701:0): initialized
Red Hat nash version 4.2.1.6 starting
  Reading all physical volumes. This may take a while...
  No volume groups found
  Unable to find volume group "VolGroup00"
ERROR: /bin/lvm exited abnormally! (pid 202)
mount: error 6 mounting ext3
mount: error 2 mounting none
switchroot: mount failed: 22
umount /initrd/dev failed: 2
kernel panic - not syncing: Attempted to kill init!

答案1

因此,正如预期的那样,问题出在缺少驱动程序。

有多个驱动因素可能导致该现象。

就我的情况而言 - 带有 SCSI 硬盘的 VirtualBox 应该设置以下驱动程序:

  1. 设备驱动程序 -> 块设备 -> 初始 RAM 磁盘 (initrd) 支持
  2. 设备驱动程序 -> 块设备 -> RAM 磁盘支持
  3. 设备驱动程序 -> SCSI 设备支持 -> SCSI 设备支持
  4. 设备驱动程序 -> SCSI 设备支持 -> SCSI 磁盘支持
  5. 设备驱动程序 -> Fusion MPT 设备支持 -> Fusion MPT (base + ScsiHost) 驱动程序

请注意,这些是存储所需的唯一驱动程序(在我的情况下,Fusion MPT 丢失并影响了启动)。

如果您想运行网络/使用键盘,则需要其他设备驱动程序,但 VirtualBox 上的系统只能使用这些设备驱动程序启动(但如果没有图形/终端/键盘则无法使用/看起来好像卡住了)。

相关内容