Linux安装内核, 如:根据支持的硬件


第一步:下载内核

要编译内核就必须有新的内核,可以从Kernel官方网站www.kernel.org上下载最新的内核源码,解压,进入目录;

第二步:清除垃圾

这一步:一般是在就内核重新编译时使用,在编译新的内核是不需要;

make clean及make mrproper;

第三步:进行内核裁减配置

内核裁减配置的原则: 从实际出发。 如:根据支持的硬件设备来决定需要选择的驱动模块,根据需要选择所支持的文件系统格式等; 具体配置命令为:

make config :通过命令接口,依次要求你设定每个选项,如果.config文件存在,会根据该文件来设置默认值;make menuconfig :显示以curses为基础的、终端式的配置菜单。make xconfig :图形界面,显示以Tk为基础X Window配置菜单。

最常用的为:make menuconfig(注:需要ncurses的rpm包)。

说明:这一步中选择为M模式的,编译到/lib/modules/下相关目录文件中;选择为*模式的,编译到内核中即/boot/vmlinuz中,启动时加载到内核中。 具体内核裁减配置参阅其它资料。

第四步:生成依赖关系

make dep

内核源码树中大多数文件都会与一些头文件有依存关系,要想编译内核顺利,在正式编译前必须让内核源码树中的各个Makefile文件知道这些依存关系。 make dep读取配置过程生成的配置文件,来创建对应于配置的依赖关系树,从而决定哪些需要编译而那些不需要。依存关系建立期间会在内核源码树中每个子目录里产生一个隐藏的.depend文件,此文件内含子目录里各个文件所依存的头文件清单。

第五步:建立内核映像和模块

2.4内核:

make bzImage :在Arch/YOUR_ARCH/boot/中生成在在zImage内核映像文件;
make modules :在相应目录下生成内核模块(即驱动模块)

2.6内核:

make :作用相当于make bzImage与make modules

第六步:安装模块

make modules_install:让make modules或make 过程中产生的.o驱动模块拷入/lib/modules/下相应目录中;

第七步:安装内核

第一种情况:直接使用make install命令即可
第二种情况:先采用cp arch/i386/boot/bzImage /boot/×××(×××表示自己随意的命名) mkinitrd /boot/×××.img 2.6.12.6(内核版本号) 修改/boot/grub/grub.conf即可。

ok,经过以上的繁琐而必要的过程后,如果过程顺利的话,重启系统即可使用刚编译完的内核了。

相关内容