1.下载内核
下载地址:www.kernel.org
例如下载的内核源码为: linux -3.10.12.tar.xz
2.解压
把linux-3.10-12.tar.xz解压到/usr/src目录
$sudo tar -xvf linux-3.10.12.tar.xz -C /usr/src/
3.配置内核参数
首先需要安装ncurses,这时字符版配置工具多依赖的。
$sudo apt-get install libncurses5 libncurses5-dev (ubuntu下)
$sudo yum install ncurses ncurses-devel (centos下)
因为新版本配置工具会自动寻找当前系统环境的配置信息(比如/boot/config-xxx文件),所以接下来可以直接运行字符版配置工具:
$sudo make menuconfig
这里的配置比较复杂,可以搜索相关资料。也可以选择默认,直接save退出,配置工具会生成一个.config文件。
4.开始编译
$sudo make
编译可能会需要一两个小时,视计算机速度而定。如果视四核的,make后加"-j4"选项,让编译程序同时使用四核编译,会节省时间。
如果编译中途出现以外,然后想重新开始编译,需要执行下面命令清理一下编译现场,然后从新编译。
$sudo make mrproper
5.安装编译好的模块
$sudo make modules_install
上面的命令会把编译好的modules复制到/ib/modules/3.10.12/文件夹下。其中3.10.12是内核版本号,在/lib/modules/目录下,你还会看到其他版本的文件夹。
6.安装编译好的内核镜像文件
$ sudo make install
这个命令会把编译文件夹里面的 “arc/x86/boot/bzimage”文件复制到"/boot",同时会复制config 和Ssytem.map文件,最终会在“/boot”中多处如下4个文件:
config-3.10.12
System.map-3.10.12
vimlinuz-3.10.12
initrd.img-3.10.12
7.修改grub启动菜单,增加新内核的启动选项
$sudo update-grub2 (ubuntu下)
$sudo grub2-mkconfig (fedora下)
8.重新启动
$sudo reboot然后就从新编译的内核启动了~
转自:http://archboy.org/2011/08/19/simple-compile-linux-3-0-kernel/ (自己做了一些修改)