Linux 内核配置和编译
一。配置内核
(1). 为什么要配置内核
1. 硬件需求
2. 软件需求
选出需要的,去掉不要的
(2). 如何配置内核
1. make config
基于文本模式的交互式配置
2. make menuconfig
基于文本模式的菜单式配置
优点:直观,简单,高效
< > 不选择该功能
<m> 内核模块 不是随时随刻要使用的 B.o文件存到硬盘中,需要才添加到内存里面。节省内存
<*>B.O文件存到内存中,随时随地可使用的。
(3). 内核配置结果
ls -a 命令查看配置结果,保存在内核里面
二。编译内核
(1).编译内核----<*>
1.make zImage
2.make bzImage
*区别:在X86平台,zImage只能用于小于512K的内核
*如需获取详细编译信息,可使用:
#make zImage V=1
#make bzImage V=1
** 编译好的内核位于arch/<cpu>/boot/目录下**
(2).编译内核模块----<M>
make modules 编译需要一个小时。
编译完需要将散落的*.ko内核模块移动到 /lib/modules 下面建立一个新的文件2.6.39
命令 :make modules_install
(3).制作 init ramdisk
方法:mkinitrd initrd-$version $version
例:mkinitrd initrd-2.6.39 2.6.39
*$version /lib/modules 可以通过查询/lib/modules下的目录得到
三。安装内核
1、cp arch/x86/boot/bzImage /boot/vmlinuz-$version
2、cp initrd-$version /bootcp initrd-$version /boot/
3、修改/etc/grub.conf
四。清理内核
1. make clean: 清理 .o 和 .ko 文件
2. make distclean 清理 .config 文件
五。总结
配置 : 产生.config文件
编译 : 产生 .o 文件产生 bzImage文件
产生 .o文件产生 .ko文件