Debian中编译内核

此页由Linux Wiki用户Chenxing于2007年7月21日 (星期六) 13:37的最后更改。

出自Linux Wiki

提示:此文已超过 17 年(6364 天)未更新,如发现内容过时或有误,欢迎改进:)

Debian编译内核有两种典型的方法。

有Debian特色的方式

所谓有Debian特色,就是最后生成的是一个deb包,可以在本机上安装,也可以安装在其它Debian系统中,制作过程也较方便。本文是对Debian参考手册相关内容的整理。

先安装编译内核所必需的软件包:

# apt-get install debhelper modutils kernel-package libncurses5-dev

下载最新的内核源码,并安装其它必备工具:

# apt-get install kernel-source-2.6.21   # 请更改为最新版本
# apt-get install fakeroot

如果愿意,可以输入你的名字和 email

# vi /etc/kernel-pkg.conf

解压源码:

$ cd /usr/src
$ tar --bzip2 -xvf kernel-source-2.4.18.tar.bz2
$ cd kernel-source-2.4.18                # 请修改为最新版本

复制当前系统的配置文件到当前文件夹(可选):

$ cp /boot/config-2.4.18-386 .config     # 将当前配置设定为默认配置

配置内核(这是一个复杂的过程,参见配置内核):

$ make menuconfig                        # 按自己的喜好来定制

开始编译:

$ make-kpkg clean                        # 必须执行这步(请参见: man make-kpkg)
$ fakeroot make-kpkg --append_to_version -686 --initrd \
                     --revision=rev.01 kernel_image

安装编译好的内核:

$ cd ..
# dpkg -i kernel-image*.deb              # 安装

make-kpkg kernel_image 实际上执行了 make oldconfig 和 make dep。如果没使用 initrd 就不要使用 --initrd 选项。

对于双核或多CPU的机器(SMP机器),参照 kernel-pkg.conf(5) 的说明设置 CONCURRENCY_LEVEL,一般应设为CPU数(核数)+1 (如果不合理,请更正)。

标准的编译内核方法

Debian支持通用的编译内核的方法,你可以参照编译内核操作。

本文对您有帮助?分享给更多朋友!

反馈与讨论

发现文档不全面、有错误却没时间编辑文档?想分享自己的经验或见解?欢迎在此留言、讨论。
个人工具
简体繁体转换