Account Links: Cart | Register | Log In

Skip to content

Red Hat Knowledgebase
Red Hat Knowledgebase Search
Article translations:
Currently Being Moderated

如何重建系统的启动ramdisk镜像-initrd.img?

Article ID: 11839 - Created on: Jul 22, 2008 6:00 PM - Last Modified:  Aug 3, 2009 11:07 PM

[英文原文]How do I rebuild the initial ramdisk image?

 

当系统添加新的scsi,sata以及光纤通道控制卡HBA后,一般需要重新build系统的initrd.img,使得initrd.img包含对新的硬件驱动模块的支持,修改/etc/modules.conf(RHEL2.1和RHEL3)和mod probe.conf(RHEL4)以后,执行下面命令来重建initrd.img:

 

# cp /boot/initrd-(kernel-version).img /boot/initrd-(kernel-version).img.bak
# mkinitrd -f initrd-$(uname -r).img $(uname -r)

 

例如

 

# cp /boot/initrd-2.4.21-27.0.2.ELsmp.img /boot/initrd-2.4.21-27.0.2.ELsmp.img.bak
# mkinitrd -v -f /boot/initrd-2.4.21-27.0.2.ELsmp.img 2.4.21-27.0.2.ELsmp

 

这个例子对一个运行2.4.21-27.0.2smp内核的系统重建了initrd.img,根据自己系统的实际运行版本自行调整mkinitrd的参数(可以使用uname -r得到本机运行的内核版本号)。

 

   * mkinitrd的-v参数可以显示initrd.img中包括的所有模块。
   * mkinitrd的-f参数可以强制覆盖initrd.img中已有的同名模块。


备注:此方法不适用于ICH7 SATA 芯片,建议核实支持Linux的驱动而不是重建initrd镜像。

           如果不确信其稳定性或执行mkinitrd命令前针对新模块的配置,建议备份/boot下现有内核的.img文件。

 


# cp /boot/initrd-(kernel-version).img /boot/initrd-(kernel-version).img.bak

 

可选项:可在/boot/grub/grub.conf文件中对启动ramdisk镜像生成单独一项,以便在启动时方便的选择老版本而不需要恢复为备份文件。下面实例允许从grug菜单来选择新或旧的启动ramdisk镜像:

 


title Red Hat Enterprise Linux AS (2.4.21-27.0.2.ELsmp)
root (hd0,0)
kernel /vmlinuz-2.4.21-27.0.2.EL ro root=LABEL=/
initrd /initrd-2.4.21-27.0.2.EL.img
title Backup initrd (2.4.21-27.0.2.ELsmp)
root (hd0,0)
kernel /vmlinuz-2.4.21-27.0.2.EL ro root=LABEL=/
initrd /initrd-2.4.21-27.0.2.EL.img.bak

 


Feedback from users like yourself is a critical factor in helping us make the Red Hat Knowledgebase as useful as possible.

More Like This

  • Retrieving data ...