(1) 通过uanme -r命令来差开内核版本,输出信息如下: 3.8.0 可见内核版本为3.8.0,如果/usr/scr目录下没有3.8.0版本的代码,可以在到下面地址下载:
(2) 代码下载完成后,mv到/usr/src目录下,解压。
(3) 配置内核,可以用make oldconfig命令(默认的配置文件路径:/boot/config-3.8.0-29-generic)。
(4) 如果配置时发生错误,有可能是系统自带内核和要安装的内核版本不同造成的,可以直接注释掉 /boot/config-3.8.0-29-generic中的错误项。
(5) 内核配置完成后,用make指令进行内核的编译。
(6) 内核编译完成后,开始编译配置的模块,编译命令:make modules。
(7) 模块编译完成后,开始模块的安装,安装命令:make modules_insall。
(8) 模块安装完成后,会在/lib/modules/3.8.0/生成build目录,build目录下即位我们生成的内核树。
(9) 生成inird.img,生成命令:mkinitramfs -o /boot/inird-linux3.8.0 3.8.0(此处的3.8.0代表/lib/modules下的3.8.0目录,inird是加载系统时的根文件系统,其中包含系统启动时用到的各种可执行文件)。
(10) 安装内核,安装命令:make install。此时在/boot/grub/grub.cfg文件中添加一项新的启动项。
(11) 将/boot/grub/grub.cfg文件中的default值设为新增加的那一项。
(12) 重启系统。