传统的内核编译方式步骤较多,Debian为用户提供了debian方式编译内核。可以直接生成一个deb包,解压即可安装。
一:配置编译环境。
# apt-get install debhelper modutils kernel-package libncurses5-dev
# apt-get install fakeroot
二:到kernel.org下载你想编译的内核源码。例如当前稳定版为2.6.22.1。将它解包。
三:make menuconfig选择需要编译的功能。或者将以前你使用过的老版本的.config文件拷贝到内核源码树下,用make oldconfig选择新功能生成新版本的内核配置文件。
四:$ make-kpkg clean (这一步必要,man make-kpkg)
$ fakeroot make-kpkg --append_to_version -bigsmp --initrd --revision=2850 kernel_image
编译内核deb包。编译完毕之后,安装,重启应用,uname -r显示的是2.6.22.1-bigsmp,这正式--append_to_version -bigsmp这两个参数控制的;dpkg -l|grep linux-image,你会发现对于这个deb包的描述就是2850,是--revision参数;initrd如果不需要,--initrd参数可以不带。这个命令实际上执行了make oldconfig和make dep。
五:编译完毕后,cd .. 会发现生成了一个.deb的包。dpkg -i安装它,它会将内核,initrd,modules和grub都解出来,也就是说您可以不必设置什么就重启机器啦。系统就会应用新内核。
总结:编译出来内核deb包,很方便大规模debian系统的内核升级。登陆机器之后,下载deb包,安装,重启,三条命令即可完成内核的升级。