转自:https://blog.csdn.net/hebdzw/article/details/46638285
问题:RHEL6.3 编译内核
1、到http://www.kernel.org下载相应内核 linux-2.6.32.67.tar.xz
2、解压到/usr/src/kernel下:# tar -Jxf linux-2.6.32.67.tar.xz
进入到解压后的目录里:
3、# make mrproper(此操作会删除原来的内核功能选择文件)
4、定制内核:# make menuconfig
5、清理临时文件:#make clean
编译内核:#make bzImage(在/usr/src/kernels/linux-2.6.32.67/arch/x86/boot/目录下生成bzImage文件)
编译模块:#make modules
实际模块安装:#make modules_install(在/lib/modules下生成2.6.32.67文件夹)
6、内核安装:cp /usr/src/kernels/linux-2.6.32.67/arch/x86/boot/bzImage /boot/vmlinuz-2.6.32.67.dzw(实际内核)
cp /usr/src/kernels/linux-2.6.32.67/.config /boot/config-2.6.32.67.dzw(设置文件备份)
7、新建相应的initial ram disk(initrd)
#mkinitrd -v /boot/initrd-2.6.32.67.dzw.img 2.6.32.67(后面的参数为第5步安装模块时生成的modules下的文件夹)
编辑grub:#vim /boot/grub/grub.conf
加入:title XXXXXX
root (h0,0)
kernel /vimlinuz-2.6.32.67.dzw ro root=LABEL=/rhgb
initrd /initrd-2.6.32.67.dzw.img(此处注意不能写成initrd /boot/initrd-2.6.32.67.dzw.img)
出现如题问题的原因是开始新建initrd的时候用的命令:
mkinitrd -v /boot/initrd-2.6.32.67.dzw.img 2.6.32.67.dzw
第二个参数不为/lib/modules/下的新模块的文件夹,所以出错
还有问题,以后写