在Debian Wheezy 7.3.0上编译安装3.12.14内核

最近须要对Linux的一个内核模块进行调整实验,故决定先在虚拟机中完成编译调试工做,最后再在真实的系统上进行测试。为了防止遗忘,把过程记录于此。html

1. 准备系统环境linux

首先从官网下载最新版的VirtualBox和Debian Wheezy 7.3.0的32位网络安装版CD镜像文件(debian-7.3.0-i386-netinst.iso)。而后就能够载入光盘开始安装了,安装的时候有几点须要注意:vim

  1. 选择语言、地区的时候,最好选择English / Hong Kong,若是选择中文则可能会出现乱码
  2. 选择安装哪些组件的时候,只要选择“标准系统组件”就好了,其它的都不装
  3. 若是以后要写到8G的U盘或者CF卡里,最好创建虚拟硬盘的时候就设置得小一些,好比7.2GB,要确保能写得下,不然以后还须要用resize2fs和fdisk从新调整,这就比较麻烦了

2. 下载内核源码,安装必需的软件bash

Debian Wheezy默认没有提供sudo工具,因此能够先把它装上。网络

su root...
apt-get install sudo
exit

可是如今仍是不能使用sudo,为了能让普通用户可以使用sudo,须要将用户加到/etc/sudoers文件中。app

su root...
vi /etc/sudoers

再次进入特权模式,找到文件中的下面这一行:工具

root    ALL=(ALL:ALL) ALL

在下面添加一行,变成这样(其中feng32是做者的用户名):测试

root    ALL=(ALL:ALL) ALL
feng32  ALL=(ALL:ALL) ALL

而后退出保存,就可使用sudo来临时得到管理员权限了。接着安装使用更方便的vim,方便以后的操做:es5

exit
sudo apt-get install vim

接着安装两个编译内核真正须要的软件包:spa

sudo apt-get install kernel-package
sudo apt-get install libncurses5-dev

最后从kernel.org上下载Linux内核源码。这里我选择的是最新的longterm版本3.12.14。

wget https://www.kernel.org/pub/linux/kernel/v3.x/linux-3.12.14.tar.xz

3. 解压内核源代码

Debian Wheezy默认就整合了xz工具,因此能够直接解压。

xz -d linux-3.12.14.tar.xz
tar xf linux-3.12.14.tar

4. 配置、编译内核

解压获得约520MB的文件,位于当前用户的home目录下。接着从现有的内核中获取配置信息,运行:

cd linux-3.12.14
make oldconfig

配置系统会询问不少新出现的配置选项,直接回车选择默认项便可。而后运行:

make menuconfig

确保你须要的特性都已经包括,按ESC退出配置。最后运行下面的指令开始编译:

make-kpkg clean 
fakeroot make-kpkg --initrd --append-to-version=-hlcodel --revision=1.0 kernel_image

在虚拟机中,单线程编译3.12.14内核大约要花费1.5小时。在编译完成以后,home目录下出现了一个deb文件:linux-image-3.12.14-hlcodel_1.0_i386.deb。

5. 安装内核

使用下面的命令安装这个deb包:

dpkg -i linux-image-3.12.14-hlcodel_1.0_i386.deb

完成后重启,而后运行unamr –r,若是出现下面的输出,则表明安装已经完成了:

3.12.14-hlcodel
相关文章
相关标签/搜索