这个是重新封包核心的命令,例如你自己修改了一个设备的驱动,如果这个驱动要加入核心级别的话,就需要对核心进行重新封包,把新加的配置编译到核心内部去!
trd.html' target='_blank'>mkinitrd指令:建立要载入ramdisk的映像文件
语法:mkinitrd[选择性参数][必要参数]
功能说明:根据内核版本和指定参数生成映像文件。
参数说明:
必要参数的具体说明如下:
参 数
功 能
指定映像文件名称和路径
指定所依据的内核版本
选择性参数的具体说明如下:
参 数
功 能
--builtin=
认为指定模块已经装入内核,忽略错误
-f
允许覆盖已存在的映像文件
--image-version
内核版本号将附加到建立的映像文件的目录前
--fstable=
使用列表自动探测根设备所建立的文件系统类型
不压缩生成的映像文件
--nopivot
不使用pivot_root系统调用作为映像的一部分
--omit-lvm-modules
不载入任何lvm模块
--omit-scsi-modules
不载入任何scsi模块
--preload=
将指定的模块载入映像中
-v
在创建映像过程中打印信息
-version
打印程序版本信息
执行范例:
范例704 在/boot目录下建立一个映像文件
[root@yingzheng 100dpi]# mkinitrd /boot/initrd-2.2.5-15.img 2.2.5-15
相关指令:
fstab、insmod、kerneld、lilo
在进行内核编译时,需要进行制作initrd.img.在Fedora下面一般是用mkinitrd,而在Ubuntu/Debian下是用mkintramfs.
它们的用法稍微有些不一样,如下所示:
mkinitrd /boot/initrd.img 2.6.26
mkintramfs 2.6.26 -o /boot/initrd.img
其中2.6.26为/lib/modules下的目录名称.
扩展知识--关于升级内核失败的一篇文章
你再進入內核選項內看看你的scsi設備, scsi設備沒有選好.
一、准备工作
首先说明,下面带#号的行都是要输入的命令行,且本文提到的所有命令行都在终端里输入。
启动Linux系统,并用根用户登录,进入终端模式下。
1、查看Linux内核版本# uname -a
如果屏幕显示的是2.6.x,说明你的已经是2.6的内核,也用不着看下文了,该干什么干什么去吧!~~~如果显示的是2.4.x,那恭喜你,闯关通过,赶快进行下一步。
2、下载2.6内核源码
下载地址:http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.18.tar.bz2
3、下载内核升级工具
(1)下载module-init-tools-3.2.tar.bz2
http://www.kernel.org/pub/linux/utils/kernel/module-init-tools/module-init-tools-3.2.tar.bz2
(2)下载mkinitrd-4.1.18-2.i386.rpm
(3)下载lvm2-2.00.25-1.01.i386.rpm
(4)下载device-mapper-1.00.19-2.i386.rpm