ubuntu12.04编译安装kernel3.7.1教程
本学期几乎没怎么折腾Linux,除了在虚拟机上装了Gentoo。眼看马上就要放假了,自己的笔记本还是乱七八糟的,根本不能用(笔记本纯粹使用来尝试各种Linux的),这个可不行,没法编程了。之前看到Chakra Linux,感觉很是绚丽,遂安装着试了下,它竟然把GTK剔除了,纯QT,这个倒是没什么,我并不关注图形界面,同时对于GTK和QT没有任何偏见,但是你好歹得解决输入法的问题吧,安装了chromium后竟然没有办法使用fcitx,网上根本没有相关文档。 www.zhishiwu.com
好吧,果断放弃,但是装什么好呢?本人还是很喜欢滚动升级的,但是Arch升级容易崩,Gentoo实在是太耗时间,而且我也不想一直开j8编译。ubuntu搭建开发平台倒是很快捷,但是软件包都不是很新,尤其是内核(我之前一直使用fedora,大家懂的)。正好尝试下自己编译内核玩玩(上一次编译内核应该是在CentOS6.2下)。
开始教程之前,我先申明,安装内核风险很大,如果你没有做好重装系统的准备,请不要继续往下看了。 www.zhishiwu.com
首先和大家说明下我的电脑的配置,如果有幸一样的话,那么你可以放心的安装,基本无问题。
宏基4750g,i7-2630,金士顿8G内存,没有开独立显卡,希捷混合硬盘500g,分了一个分区ext4(/dev/sda1),没有分配swap分区。
以下均需root权限
1.下载linux-3.7.1.bz2,这个自己去www.kernel.org下,或者wget也行。
2.将linux-3.7.1.bz2,cp至/usr/src,然后bzip2 -d linux-3.7.1.tar.bz2,tar -xvf linux-3.7.1.tar
3.apt-get install build-essential libncurses5-dev libncurses5,这个和之后的make menuconfig有关,我的电脑里仅仅安装了libncurses5,没有另外两个包,大家根据情况而定吧。
4.cd /usr/src/linux-3.7.1
5.cp ../linux-headers-3.20.35-generic/.config . 这一步大家看情况而定吧,我之前刚刚将内核升级至3.2.0-35,同时将原来的.config拷贝过来也只是为了保险,毕竟应该没有人喜欢一直重装系统的。
6.make menuconfig 这里的配置大家最好去wiki上搜一下,内容很多,我不一一描述了,如果懒地看,就直接默认配置就行了。
7.apt-get install kernel-package
8.make-kpkg --initrd --append-to-version -01 kernel_image kernel_headers -jN 请大家注意,其中-01只是一个扩展号,没什么影响的,我这里编译出来的内核就是kernel-3.7.1-01,至于-jN,这里的N便是编译使用的线程数量,由于我是4核8线程,因此N=8,大家自己根据配置而定,接下来就是一个漫长的等待了,我大概编译了19分钟左右,另外请做好散热准备,避免因为过热关机。
9.如果编译过程没有出错,那么恭喜,内核编译部分完成了,接下来是安装,在/usr/src下我们将会看到两个deb文件,其中一个是内核文件,一个是头文件,大家直接dpkg -i安装就好了,接下来shutdown -r now。 good luck!
如果能够合理配置.config文件,电脑的性能会有比较大的提升,但是请做足功课,免得崩了。
kernel-3.7.1带来了什么还没测试,希望功耗有所改善吧。。。