如何编译linux内核
Linux 2009-09-01 13:14:46 阅读440 评论 字号:大中小
1.下载名为linux-2.6.15.tar.bz2的内核源码文件。
2.将该文件拷贝到/usr/src/kernels/目录下(cp linux-2.6.15.tar.bz2 /usr/src/kernels/),解压该文件:
tar jxvf linux-2.6.15.tar.bz2,此时会在kernels下生成linux-2.6.15的源码文件夹。
3.将/usr/include/asm、/usr/inlude/linux、/usr/include/scsi链接到/usr/src/kernels/linux-2.6.15/include目录下的对应目录中:
# cd /usr/include
#rm -rf asm linux
# ln -s /usr/src/kernels/linux-2.6.15/include/asm-i386 asm
# ln -s /usr/src/kernels/linux-2.6.15/include/linux linux
# ln -s /usr/src/kernels/linux-2.6.15/include/scsi scsi
4.删除源代码目录中残留的.o文件和其它从属文件:
#cd /usr/src/kernels/linux-2.6.15
#make mrproper
5.配置内核:
#cd /usr/src/kernels/
#cp linux-2.6.16(当前系统内核)/.config linux-2.6.15(当前编译内核)./config
# make oldconfig
#make menuconfig (默认保存即可)
6.编译内核:
#make dep
#make clean
#make bzImage
#make modules
#make modules_install
编译成功后,系统会在/lib/modules下生成2.6.15的子目录,里面存放着该内核的所有可加载模块。
7.启动该内核
将该内核和System.map文件拷贝到/boot目录下:
# cp /usr/src/kernels/linux-2.6.15/arch/i386/boot/bzImage /boot/vmlinuz-2.6.15
# cp /usr/src/kernels/linux-2.6.15/System.map /boot/System.map-2.6.15
8.生成.img文件
#mkinitrd /boot/initrd-2.6.15.img 2.6.15
9. 修改/boot/grub/目录下的menu.lst文件,将该内核信息写入到该文件中。
10.重新启动
#reboot
阅读(1073) | 评论(0) | 转发(0) |