首先,请注意:如果您正在重新编译的内核同系统中现存的某个具有一样的版本号,则请先删除原先的模块。例如,如果您要重新编译 2.6.10
,您必须删除 /lib/modules/2.6.10
目录。
make clean make all make modules_install install
词汇解释:上述诸如 clean
、all
等被称为目标。请注意,自从 2.6
开始出现一个称为 all
的目标。执行该目标相当于执行(在 x86 架构上) bzImage
和 modules
目标。这一新选项将为任意给定的架构生成期望的目标。而在 2.6
之前,各个架构都有其各自不同的编译内核选项。如果您如上所示为 make 指定多个目标,则它们将按照出现的次序被执行。万一某个目标失败,make 将不会继续下一个[39]。
bzImage
:构建内核。请注意,该目标仅适用于 x86 和 x86_64 处理器。这一目标还会为该内核生成 System.map
。我们将在下文中讨论该文件的作用。
modules_install
:安装模块。模块的默认安装目录是 /lib/modules/<内核-版本>
。该目标也计算模块的依赖性。
install
:最终将内核和模块复制到正确的地方,并修改引导程序的配置以启用该新内核。如果您需要像第 7 节 “手动安装新内核”所述那样手动安装,请不要执行它。
好,现在一切都已编译并正确安装,可以准备测试了!您只须重新启动您的机器并在启动菜单中选择新的内核。请注意,老内核依旧保留以便当您在新内核上碰到问题时依然可以使用。然而,您可以手动安装内核并更改启动菜单。我们将在下一节中讨论该方法。