Ubuntu 18.04 上编译Linux内核

一、环境说明

编译环境为Ubuntu18.04的工控电脑,QOTOM Q310P

linux_01.png

二、编译步骤

  1. 下载内核源代码,地址:https://www.kernel.org/

  2. 将下载好的文件linux-4.19.23.tar.xz解压

    1
    tar -Jxf linux-4.19.23.tar.xz
  3. 将解压后的文件move到/usr/src/

    1
    sudo mv linux-4.19.23 /usr/src
  4. 安装必要依赖库(不同的版本可能会有所不同,原则是缺少什么装什么)

    1
    2
    3
    4
    5
    6
    sudo apt-get install gcc make libncurses5-dev openssl libssl-dev 
    sudo apt-get install build-essential
    sudo apt-get install libelf-dev
    sudo apt-get install libc6-dev
    sudo apt-get install bison
    sudo apt-get install flex
  5. 使用原内核配置文件,make menuconfig显示界面后exit退出,选择保存

    1
    2
    3
    4
    5
    sudo make mrproper #清除编译过程中产生的所有中间文件
    sudo make clean
    cd /usr/src/linux-4.19.23
    sudo cp /boot/config-4.15.0-45-generic .config
    sudo make menuconfig

linux_02.png

  1. 开始进行编译,本人CPU双核4线程,编译时间取决电脑性能

    1
    sudo make -j4
  2. 编译完成

    linux_03.png

三、安装内核

  1. 执行安装命令

    1
    2
    sudo make modules_install #安装内核模块
    sudo make install #安装内核

    linux_04.png

  2. 生成启动

    1
    2
    3
    sudo mkinitramfs -o /boot/initrd.img-4.19.23 #make install已经自动生成了
    sudo update-initramfs -c -k 4.19.23 #创建initramfs镜像 make install已经自动生成了
    sudo update-grub2 #更新grub.cfg启动文件,会新增4.19.23内核的启动项
  3. 重启电脑,检验结果OK

    1
    2
    3
    hch@tiger:~$ sudo shutdown -r now
    hch@tiger:~$ uname -a
    Linux tiger 4.19.23 #1 SMP Wed Feb 20 16:50:39 CST 2019 x86_64 x86_64 x86_64 GNU/Linux
------ 本文结束------