从今年寒假的时候,开始学会编译内核了。
其实也不是很麻烦。
总结一下方法:
系统是ubuntu 10.10 下载升级内核包....tar.bz2
首先要安装的工具是:
$sudo
apt-get install build-essential kernel-package libncurses5-dev
保证上述软件都安装了,可以编译自己的内核了。
很多人建议编译到/usr/src/目录下,其实是无所谓的。可以解压到任何目录下编译。
解压命令:
$tar jvxf ......tar.bz2
之后开始进入到解压的目录下:
$ sudo make mrproper
$cp /boot/config-`uname -r` ./.config
开始编译内核。
ubuntu 的工具是make-kpkg,和其他的发行版相比,步骤相对简单。
相关命令:
代 码:
$sudo make-kpkg clean 这条命令好像不要超级权限,很多资料上说要,不过这不是原则问题。
$ sudo make-kpkg -initrd --initrd --append-to-version=dell1400 kernel_image kernel-headers
上 述命令中的dell1400可以用自己喜欢的字符代替,最后的字符一定是数字.
输完上述命令回车之前,建议大家把浏览器还有别的运用程序都关掉, 机器开始的工作比较艰苦。我的机器大概十几分钟。
安装内核
编译完成就是安装工作。编译好的内核在上一层目录。包括 linux-headers-...-_i386.deb和linux-image-...-i386.deb两个文件,如果你不搞开发的话,只要安装内 核就可以,头文件以后要用的时候再说。
安装相关命令:
代码:
$ cd ..
$ sudo dpkg -i linux-image-(按tab键)
文 件名很长,如果不用tab自动补足是不可能的,tab键万岁。
安装完成后和老内核比较一下大小
代码:
$ ls -l /boot/
重新启动验证新内核。
代码:
$ sudo reboot
上面横线的部分是我参考别人的方法,因为我没用这种方法安装过,不知道行不行。
我的方法,比较传统:
$sudo make mrproper
$sudo make menuconfig
$sudo make clean
$sudo make bzImage
$sudo make module
$sudo make module_install
$sudo make install
$sudo cp 新的内核 /
因为10.10版本的内核映像已经放在根目录下,其他的也许要放在/boot下。
$sudo gedit /boot/grub/grub.cfg
修改里面的挂载内核名称。
之后。。。
$sudo reboot就ok了。
以上都是我凭着记忆来写的,如果途中漏掉了什么。。。囧。不要见怪。呵呵。