Ubuntu 16.04LTS环境下的linux-4.0.1内核编译

一:编译环境

  • 硬件:Windows7电脑
  • 软件:Ubuntu-16.04 LTS
               VMware Workstation 14 pro
  • 数据包:Linux-4.0.1.tar.xz
                  Patch-4.0.1.xz

二:准备工作

  • 下载linux内核的数据包: https://mirrors.edge.kernel.org/pub/ (我选择的是Linux-4.0.1.xz及其补丁)。
  • 全部数据集中下载:https://download.****.net/download/m0_37606958/10425097
  • 通过终端 su – 将权限提高到管理员root模式:
    执行下面三条指令(试验后提示,“ // ”是注释):
      1 apt-get install bc        //编译过程中会出现bc : Not found
      2 apt-get install libssl-dev   //编译过程中会出现fatal error : openssl/opensslv.h : No such file or diretory
      3 apt-get install libncurses5-dev   //编译过程中出现
    Ubuntu 16.04LTS环境下的linux-4.0.1内核编译
        4 cp /home/”你的用户名”/Desktop/linux-4.0.1 /usr/src/ -rf    //复制文件夹 输入cp加上空格后直接把linux-4.0.1的文件夹直接拖到终端 ,后面再加上/usr/src/ -rf
       5 cp  /home/”你的用户名”/Desktop/patch-4.0.1.xz   /usr/src/
       6 cd  /usr/src/    //进入待编译的文件夹下 /usr/src
       7 xz  -d patch-4.0.1.xz  |  patch  –p1    //执行没有什么提示就正确了,有的话把上次的 patch-4.0.1 删除,重试
       8 cp  linux-headers-4.13.0-36-generic/.config   linux-4.0.1/     //将文件.config复制到linux-4.0.1下,待配置第十条指令需要使用

三:编译阶段

  • 开始编译
      9 cd  linux-4.0.1       //由于上面第6条已经进入了 /usr/src/ ,现在进入 linux-4.0.1
      10 make menuconfig      //基于文本选单的配置界面 Load - > OK -> Save -> Ok -> Exit -> Exit -> Yes ,配置好了就进入真正编译阶段
    Ubuntu 16.04LTS环境下的linux-4.0.1内核编译
    Ubuntu 16.04LTS环境下的linux-4.0.1内核编译
    Ubuntu 16.04LTS环境下的linux-4.0.1内核编译
    Ubuntu 16.04LTS环境下的linux-4.0.1内核编译
    Ubuntu 16.04LTS环境下的linux-4.0.1内核编译
    Ubuntu 16.04LTS环境下的linux-4.0.1内核编译
    Ubuntu 16.04LTS环境下的linux-4.0.1内核编译

      11 make  bzImage     //编译启动镜像,等吧,需要一段时间
      12 make  modules   //编译模块
      13 make  modules_install    //先安装模块
      14 make  install    //再安装内核

四:修改启动项

  • 镜像制作
      15 mkinitramfs  4.0.1  -o  /boot/initrd.img-4.0.1     //制作镜像
      16 update-grub2      //更新启动选项
    Ubuntu 16.04LTS环境下的linux-4.0.1内核编译

五:测试阶段

  • 在完成所有工作之后,就是测试了,保存所有工作,并重启虚拟机。
  • 记住在Ubuntu启动的的过程中一直按住 shift 键,就会出现如下界面。
    Ubuntu 16.04LTS环境下的linux-4.0.1内核编译

  • 并选择Advanced options for Ubuntu 就会出现如下界面
    Ubuntu 16.04LTS环境下的linux-4.0.1内核编译

  • 我们的Ubuntu with Linux 4.0.1 出来了,代表编译完成了。

    六:其他注意事项

  • 各阶段的指令的过程是顺序执行的。

  • 在所有指令没有出现错误时,执行的指令是没有问题的。
  • 在update-grub2 执行后,重启后没有出现grub管理界面时,不用着急,先不用去更改 /boot/grub/grub.cfg 文件,因为它在执行update-grub2会自动生成相关配置文件。
    Ubuntu 16.04LTS环境下的linux-4.0.1内核编译

  • 如果启动出现问题,可以尝试到 /etc/default/grub 文件中修改配置(以下出现#注释掉的是我尝试过的选项)。
    Ubuntu 16.04LTS环境下的linux-4.0.1内核编译

  • 特别注意:启动的时候要按住 shift 键。

  • 笔者是第一次写博客。编译可能还存在未知的问题,如果存在其他的问题欢迎补充,与大家一起分享,一起进步。

七:总结

     linux-4.0.1 内核终于编译了,如果个人想要个性化linux还是好好学习吧,理论加实践,毕竟实践是检验真理的唯一标准。
     经过几天的过程,发现网络资源的庞大,但需要自己认真选择,尽量选择实践过的。谢谢以前大家的经验。
     最后,祝大家编译成功。

八:参考资料

九:声明