Linux内核升级手册

Linux内核升级手册

Linux内核升级手册

目 录

目 录 .............................................................................................................. 2 1 1.1

1.2

2

2.1 2.2

3

3.1 3.2 3.3

4

4.1 4.2 4.3 4.4 4.5 4.6

准备工作 ........................................................................................ 3

下载内核 ......................................................................................................... 3 内核解压 ......................................................................................................... 3

配置 ............................................................................................... 4

配置新途径 ..................................................................................................... 4 配置技巧 ......................................................................................................... 4

编译和安装内核 ............................................................................. 5

生成依赖 ......................................................................................................... 5 编译内核映像 .................................................................................................. 5 编译和安装模块 .............................................................................................. 5

启动配置 ........................................................................................ 6

LILO 入门 ...................................................................................................... 6 启用内核的方案 .............................................................................................. 6 为修改lilo配置文件作准备 ............................................................................. 6 修改lilo配置文件 ........................................................................................... 7 执行lilo ........................................................................................................... 7 启动配置详解 .................................................................................................. 8

第2页/共8页

Linux内核升级手册

1 准备工作

1.1 下载内核

如果您只是想编译一个您已安装内核的新版本(例如,实现 SMP 支持),那不需要下载任何代码 -- 跳过此章节继续下一章节。

您可以在http://www.kernel.org/pub/linux/kernel找到内核代码。当您进入到那后,您将发现内核的源代码按内核版本(v2.2、v2.3 等),被组织到多个不同的目录中。在每个目录中,您将发现文件被冠以\和\。这些就是 Linux 内核的源代码。您也将看到冠以 \和 \的文件。这些是用来更新前面完整的内核源代码的补丁包。如果您希望编译一个新的内核版本,您将需要下载这些\文件的其中之一。

1.2 内核解压

如果您已从 kernel.org 下载一个新的内核,现在是要将其解压的时候了。首先,使用命令cd /usr/src进入内核源代码目录。如果这里有一个存在的\目录,将其改名为\,以 root 权限)。

现在,可以解压新的内核包了。仍然在 /usr/src 目录下,如果您下载的源代码是以

tar.gz

为后缀的,则输入 tar xzvf

/path/to/my/kernel-x.y.z.tar.gz 或者如果你下载的源代码是以tar.gz2为后缀的,则输入 cat /path/to/my/kernel-x.y.z.tar.bz2 | bzip2 -d | tar xvf -。在输入完此命令后,您下载的内核源代码会被释放到一个新的\目录下。注意:整个内核源代码通常将在硬盘上占用超过 50 兆空间!

第3页/共8页

Linux内核升级手册

2 配置

在您编译内核前,您需要配置它,配置是您精确控制在新内核中启用(禁止)哪些内核功能的机会。您也将控制哪些会被编译到内核的二进制映像(在启动时被载入)而哪些被编译到需要时载入的内核模块文件。

老式配置内核的方法是极为痛苦的过程,并涉及到进入 /usr/src/linux 目录并输入 make config 命令。请放弃这种配置内核的方式,除非您想在命令行上回答几百个(对!几百个)“yes/no”的问题。

2.1 配置新途径

我们是现代人类,我们不用再输入 make config,而是输入 make menuconfig 或者 make xconfig。如果您想要配置您的内核,使用上述选择之一。如果您输入 make menuconfig,您将使用一个漂亮的基于文本的彩色菜单系统来配置内核。如果您输入 make xconfig,您将使用一个更漂亮的基于 X-Window 的 GUI 界面来配置内核的各种选项。这里有一个使用 \menuconfig\的屏幕截图:

当使用 \时,在左面出现一个 \的选项能被编译成为一个模块。当选项被选中,按下空格键来循环选择选项是被选中或未选中, (\表示将被编译成内核映像而(\表示将被编译成模块。

2.2 配置技巧

在这里有极其多的内核选项,而且我们无法在此一一解释,所以请利用内核内置的帮助功能。基本上每个选项都至少有一些描述,而且每个通常都有一行\如果您不知道这个选项的含义,输入 Y。(或者 N)\。这些提示在您不知道一个特定选项的含义时能帮助您。要使用帮助,选中您有疑问的选项然后按 \键。

第4页/共8页

Linux内核升级手册

3 编译和安装内核

3.1 生成依赖

一旦您的内核配置完毕,就可开始编译它了。在我们能编译它前,我们需要生成依赖(dependency)信息并清除任何老的\编译结果\。这可以通过在 /usr/src/linux 下输入 make dep; make clean 完成。

3.2 编译内核映像

现在是编译真正的二进制内核映像时候了。输入 make bzImage。过几分钟后,编译会结束而且您在 /usr/src/linux/arch/i386/boot(x86 PC 内核)目录下找到 bzImage 文件。我们将待会告诉您如何安装这个新内核,但是现在我们要看看模块编译了。

3.3 编译和安装模块

现在我们有了 bzImage,下面要编译模块了。即使您在配置内核时没有使用任何模块,也不要跳过此步骤 -- 在编译完 bzImage 后立刻编译模块是个好习惯。而且,如果您真的没有模块需要编译,这个步骤也非常快就结束了。输入 make modules; make modules_install。这将导致模块被编译而且被安装到 /usr/lib/ 目录下。

祝贺您!您的内核已经被编译完成了,您的内核模块也编译完成并被安装。现在是要重新配置 LILO,这样您能使用新的内核。

第5页/共8页

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4