Linux内核编译与安装

操作环境:RHEL 5.1

一、准备工作

1、获取内核 http://www.kernel.org/

2、解压缩内核文件,进入解压后内核源代码目录,切换至root用户

tar -xzvf linux-2.6.39.4.tar.bz2

cd /mnt/hgfs/linux-2.6.39.4

su root

二、内核编译

3、内核清理:清理源代码中的*.o等生成文件,获得纯净的内核。 直接官网上下载的代码可免去该步骤。

make distclean

4、内核配置

拷贝当前运行内核的配置文件:cp /boot/config-2.6.18-53.el5  ./.config

运行配置,make menuconfig ARCH=x86

按需配置后保存退出,配置选项参考网上资源。

【注1】默认各种架构的配置文件在arch/[cpu]/configs文件夹下;运行时终端要保证窗口足够大能容纳menu界面

【注2】关于make menuconfig 选项中“*”“M”“ ”3个符号的含义:

“*”—— a.c->a.o->生成uImage 包含编译和链接过程。最后生成内核文件

“M”—— b.c->a.o 只包含编译过程

“ ”—— d.c->不变化

5、内核编译:只编译配置时选择为“*”的选项

make zImage (<512K)

make bzImage (>512K)

编译好的内核位于arch/<cpu>/boot/目录下

6、内核模块编译:编译配置时选择“M”的选项

make modules

7、安装内核模块

make modules_install

将编译好的内核模块拷贝到系统/lib/modules下

8、制作init ramdisk

mkinitrd initrd-$version $version

initrd-$version表示制作的init ramdisk的名称,制作完后保存在内核根目录。

其中$version通过查询/lib/modules获得,表示内核版本号,此处为2.6.39.4。

相关推荐