一、 系统环境和原始内核版本:
1、 ubuntu 10.04操作系统&&linux-2.6.38内核版本
二、 操作步骤
1、环境配置
安装必备软件编译工具:
#apt-get install libncurses5-dev build-essential kernel-package
注意:
(1)libncurses5-dev是为之后配置内核能运行 make menuconfig程序做准备
Build-essential为编译工具,kernel-package是编译内核工具
(2)如果系统显示无法查找到这三个文件,输入#apt-get update更新数据源。
进入root用户权限(本文全程超级用户操作):
#sudo passwd root (第一次进入超级用户需设置密码)
#su (设置完超级用户密码后命令su直接登录)
2、下载内核
登录www.Kernel.org下载最新版本内核,本文下载linux-3.8.4.tar.bz
3、解压缩
#cd /usr/src
/usr/src# tar xrf /home/XX/Downloads/linux-3.8.4.tar.bz2
4、配置内核
/usr/src# cd linux-3.8.4
/usr/src/linux-3.8.4#makemenuconfig
注:
可以直接save,exit直接生成.config文件,也可以使用当前系统配置文件,使用当前系统配置文件方法:/linux-3.8.4#cp/boot/config-XX ./.config,然后进入menuconfig选择load选项。
5、编译内核
/usr/src/linux-3.8.4#make (也可以用make –j4命令据说可以节约时间,但是个人用下来觉得没什么区别。)
Ps:最痛苦的过程了,慢慢熬吧,在这个期间吃个饭,看个电视……这步最起码一个小时,某只最杯具的一次是3个小时……o(╯□╰)o
6、加入模块
/usr/src/linux-3.8.4#makemodules_install
Ps:这步也很漫长,不过和前一步相比,小巫见大巫了。
7、生成可执行的内核引导文件
/usr/src/linux-3.8.4#makebzImage(i字母要大写)
/usr/src/linux-3.8.4#cparch/x86/boot/bzImage /boot/vmlinuz-3.8.4
8、将System.map复制到/boot下:
/usr/src/linux-3.8.4#cpSystem.map /boot/System.map-3.8.4
9、生成initrd.img文件
/usr/src/linux-3.8.4#cd/lib/modules/3.8.4
/lib/modules/3.8.4#update-initramfs–c –k 3.8.4
10、自动查找新内核,并添加至grub引导:
#update-grub
11、清除多余的创建文件(可以不用理)
#cd /usr/src/linux-3.8.4
#make clean
12、重启系统
#reboot 或者shutdown –r now
重启后,进入终端使用uname –a命令可以看到内核编译的结果,