在学习内核驱动模块的时候,需要打开内核的一些调试选项。但是发行版本自带的内核可能会关闭这些调试选项,所以需要自己动手编译内核。这里总结一下编译、安装内核的方法和步骤。
¶下载内核源代码
首先使用命令uname -r确定现在运行的内核版本,再到kernel.org下载一个版本接近的内核。这里以2.6.27.57为例,将下载好的源码包放在/usr/src目录下。
1 | [pk@localhost src]$ uname -r |
¶配置
解压源码包,并将现在运行kernel的.config文件拷贝进来,再进入menuconfig,打开自己需要的选项,关闭自己不需要的选项。.config文件可以在/lib/modules/$(uname -r)/build目录找到。配置的具体过程,略。
1 | [pk@localhost src]$ sudo tar -xf linux-2.6.27.57.tar.bz2 |
¶编译和安装
配置完成之后,依次执行下面的命令编译、安装。make install会将编译好的kernel镜像、Symbol等文件安装到/boot目录,并自动配置好Grub。
1 | sudo make -j4 |
¶尝试新的内核
重启系统,在Grub选项菜单里,选择新的内核启动系统。进入终端,使用命令uname -r确定新的内核安装成功。
1 | [pk@localhost ~]$ uname -r |