mkinitrd

建立要载入ramdisk的映像文件

补充说明

mkinitrd命令 建立要载入ramdisk的映像文件,以供Linux开机时载入ramdisk。

这个是重新封包核心的命令,例如你自己修改了一个设备的驱动,如果这个驱动要加入核心级别的话,就需要对核心进行重新封包,把新加的配置编译到核心内部去!

语法

  1. mkinitrd(选项)(参数)

选项

  1. -f:若指定的映像问家名称与现有文件重复,则覆盖现有的文件;
  2. -v:执行时显示详细的信息;
  3. --omit-scsi-modules:不要载入SCSI模块;
  4. --preload=<模块名称>:指定要载入的模块;
  5. --with=<模块名称>:指定要载入的模块;
  6. --version:显示版本信息。

参数

  • 映像文件:指定要创建的映像文件;
  • 内核版本:指定内核版本。

实例

  1. [root@localhost tmp]# mkinitrd -v -f myinitrd.img $(uname -r)
  2. Creating initramfs
  3. WARNING: using /tmp for temporary files
  4. Looking for deps of module ide-disk
  5. Looking for deps of module ext3 jbd
  6. Looking for deps of module jbd
  7. Using modules: ./kernel/fs/jbd/jbd.ko ./kernel/fs/ext3/ext3.ko
  8. /sbin/nash -> /tmp/initrd.Vz3928/bin/nash
  9. /sbin/insmod.static -> /tmp/initrd.Vz3928/bin/insmod
  10. /sbin/udev.static -> /tmp/initrd.Vz3928/sbin/udev
  11. /etc/udev/udev.conf -> /tmp/initrd.Vz3928/etc/udev/udev.conf
  12. copy from /lib/modules/2.6.9-5.EL/./kernel/fs/jbd/jbd.ko(elf32-i386) to /tmp/initrd.Vz3928/lib/jbd.ko(elf32-i386)
  13. copy from /lib/modules/2.6.9-5.EL/./kernel/fs/ext3/ext3.ko(elf32-i386) to /tmp/initrd.Vz3928/lib/ext3.ko(elf32-i386)
  14. Loading module jbd
  15. Loading module ext3
  16. [root@localhost tmp]# file myinitrd.img
  17. myinitrd.img: gzip compressed data, from Unix, max compression
  18. [root@localhost tmp]# mv myinitrd.img myinitrd.img.gz
  19. [root@localhost tmp]# gzip -d myinitrd.img.gz
  20. [root@localhost tmp]# file myinitrd.img
  21. myinitrd.img: ASCII cpio archive (SVR4 with no CRC)