2.4基于虚拟机的Linux内核编译

2014-11-24 08:20:34 · 作者: · 浏览: 6

今天把Linux的内核重新编译了一下,周折颇多.


编译的是自带内核2.4.28-8.主要是想把模块加载的选中.


再就是体验下Linux内核编译.


1、 在/usr/src/Linux-2.4.28-8清楚下配置文件make distclean


2、 把arch/x86_64/defconfig 拷贝到Linux-2.4.28-8的目录下配置内核make menuconfig


3、 在第二步里 我把模块加载的一些选项都选上了


4、 编译内核 make bzImage


到了这里并没有提示错误 但是我却找不到编译好的bzImage.很是郁闷


后来发现在arch/i386/boot下面,而不是arch/x86_64/boot下面


5、 init ramdisk的制作 makinitrd initrd-2.4.28-8 2.4.28


6、 然后把内核和ramdisk都拷贝到/boot下面


7、 配置/etc/grub.conf


kernel+内核名


initrd + ramdisk



全部完成,开始重启.


进入后发现不行~


error: /bin/insmod exited abnormally!
loading buslogic.o module
/lib/buslogic.o:kernel-module version mismatch
/lib/buslogic.o was compiled for kernel version 2.4.20-8
while this kernel is version2.4.20-8custom
error: /bin/insmod exited abnormally!
loading jbd.o module
/lib/jbd.o:kernel-module version mismatch
/lib/jbd.o was compiled for kernel version 2.4.20-8
while this kernel is version2.4.20-8custom
error: /bin/insmod exited abnormally!
loading ext3.o module
/lib/ext3.o :kernel-module version mismatch
/lib/ext3.o was compiled for kernel version 2.4.20-8
while this kernel is version2.4.20-8custom
error: /bin/insmod exited abnormally!
mounting /proc filesystem
creating block devices
kmod:failed to exec /sbin/modprobe -s -k block-major-8, error = 2


一大堆错误信息.


又是郁闷了好长时间


后来找到了处理办法


回到第2步 配置内核的时候 把buslogic和jbd(ext3)改为内核编译 则可以启动


到现在还没发现什么问题.处子秀总算踉踉跄跄的完结.给自己加加油!!~呵呵