以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
#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设备的支持直接加入内核,我以前只注意了前者。