一、下载源代码和编译软件的准备
下载内核源代码:
如果你懒得去网站点联接,运行下列命令:
代码:
$cd ~
$ wget pub/linux/kernel/v2.6/linux-2.6.31.1.tar.bz2
安装有关编译程序。安装make ,gcc, make-kpkg,运行menuconfig等等和编译内核相关的工具。
有关命令:
代码:
$sudo apt-get install build-essential kernel-package libncurses5-dev
二、解压源代码
代码:
$ cd ~
$ mkdir src && tar jfx linux-2.6.25.10.tar.bz2 -C src/
代码:
$ cd ~/src/linux-2.6.25.10
三、开始编译前的准备工作。
首先,清理以前编译时留下的临时文件。如果是刚刚解开的包,不需要执行这步。如果是第二次或者是第n次编译,那么一定要执行。
相关命令如下:
代码:
$ sudo make mrproper
网上很多教程上说把现在使用的内核的config拷贝过来参考,据实验,是不需要的,ubuntu还有
debian会自动做这步。不过这条命令倒是可以学习一下。当然你可以将以前的配置拷贝过来。
命令:
代码:
cp /boot/config-`uname -r` ./.config
四、开始配置内核选项。
相关命令:
代码:
$sudo make menuconfig
六、开始编译内核。
代码:
$sudo make-kpkg clean 这条命令好像不要超级权限,很多资料上说要,不过这不是原则问题。
$ sudo make-kpkg -initrd --initrd --append-to-version=ubuntu2.6.31 kernel_image kernel-headers
上述命令中的ubuntu2.6.31可以用自己喜欢的字符代替,最后的字符一定是数字.
七、安装内核
编译完成就是安装工作。编译好的内核在上一层目录。包括linux-headers-...-_i386.deb和linux-image-...-i386.deb两个文件,如果你不搞开发的话,只要安装内核就可以,头文件以后要用的时候再说。
安装相关命令:
代码:
$ cd ..
$ sudo dpkg -i linux-image-(按tab键)
文件名很长,如果不用tab自动补足是不可能的,tab键万岁。
安装完成后和老内核比较一下大小
代码:
$ ls -l /boot/
八,修改menu.lst
增加以下行:
title Ubuntu 9.04, kernel 2.6.31-1
uuid ad7b0448-5a9b-48c9-abec-7be0fa6ec3e5
kernel /boot/vmlinuz-2.6.31.1ubuntu2.6.31 root=UUID=ad7b0448-5a9b-48c9-abec-7be0fa6ec3e5 ro locale=zh_CN quiet splash
initrd /boot/initrd.img-2.6.31.1ubuntu2.6.31
quiet
九、重新启动验证新内核。
代码:
$ sudo reboot
阅读(2889) | 评论(0) | 转发(0) |