目标
下载ubuntu18 4.15.0-20-generic内核源码,默认情况下编译的内核版本会是4.15.17,我们需要调整版本号跟系统默认的一致,即4.15.0-20-generic
1 下载内核源码
sudo apt install linux-source-4.15.0
默认情况下,上面的命令会下载最后一个系统补丁版本,比如:4.15.0-212-generic。为了避免这种情况,我们需要禁用apt除bionic main以外的其他更新源。编辑/etc/apt/source.list,注释掉除bionic main以外的其他源
sudo apt update
sudo apt install linux-source-4.15.0
如下图可以看到安装的源码包补丁为4.15.0-20.21
安装成功路径为/usr/src/,解压压缩包:tar -jxvf linux-source-4.15.0.tar.bz2
修改Makefile中的版本号:
修改后可以使用make kernelrelease查看生成的版本号
完成源码安装后,需要重置apt源,启用注释掉的源
2 编译内核
安装编译依赖的工具:
sudo apt-get install libncurses5-dev libssl-dev build-essential openssl zlibc minizip libidn11-dev libidn11 libelf-dev bc
cd linux-source-4.15.0
编译前清理:
make mrproper
make clean
配置编译内核选项:
cp /boot/config-4.15.0-20-generic .config
编辑.config,启用CONFIG_MODVERSIONS
执行编译:
make -j8