Debian里编译内核

以Debian 2.6.8版本为例:

1、Debian.org上关于编译内核的说明;另一篇看起来不错的文章:Creating custom kernels with Debian's kernel-package system

2、下载内核源代码apt-get install kernel-source-2.6.8,在/usr/src下得到kernel-source-2.6.8.tar.bz2文件,用tar xfj命令展开;

3、下载需要的patch,比如休眠功能的patch是kernel-patch-suspend2,注意目前在experimental里才有,所以要在/etc/apt/sources.list里加上必要的源;

4、执行以下操作,如果当前语言是中文,执行前最好执行zhcon进入中文环境:

# cd /usr/src/kernel-source-2.6.8
# cp /boot/config* .
# make-kpkg clean
# make-kpkg --append_to_version -2 --added_patches suspend2 --config menuconfig
# make-kpkg --append_to_version -2 --initrd kernel_image
# cd ..
# dpkg -i kernel-image-2.6.8-2.i386.deb

注意在menuconfig的时候先载入原来的配置文件,即上面第二行复制过来的/usr/source/config-xxx文件,然后在这个配置上进行修改;另外,我如果不加--initrd参数,则新内核无法启动。

5、重启电脑用新内核启动。

Update(2005/12/23):不加--initrd参数可以启动了,关键是在menuconfig的时候要把ext2,ext3等文件类型加入内核,同时要把对ide设备的支持直接加入内核,我以前只注意了前者。

搬家前链接:https://www.cnblogs.com/bjzhanghao/archive/2005/10/13/254213.html