1 安装make-kpkg
sudo apt install kernel-package
大概需要下载800M左右的文件。
2 配置内核
在内核源码顶层目录执行:
make xxx_defconfig
3 编译内核并制作内核deb包
在内核源码顶层目录执行:
sudo make-kpkg --initrd --append-to-version -20220228 --revision 001 kernel_image kernel_headers -j4
参数说明:
--initrd: 生成initramfs
--append-to-version:生成内核版本附加信息
--revision:deb文件的版本信息,只影响文件名
kernel_image:内核和模块的安装包
kernel_headers:生成内核头文件的安装包。
-j:指定多少个线程编译内核
4 安装
编译完成后,会在上级目录中生成deb文件:
linux-headers-xx.xx.xx.deb
linux-image-xx.xx.xx.deb
可以直接在ubuntu中安装:
sudo dpkg -i linux-headers-xx.xx.xx.deb
sudo dpkg -i linux-image-xx.xx.xx.deb
sudo update-grub
sudo reboot
5 创建编译内核模块使用的build
目录:
如果/lib/modules/$(uname -r)/
没有build
目录,是无法编译内核模块的,需要手动创建链接文件:
sudo ln -s /usr/src/linux-headers-$(uname -r)/ /lib/modules/$(uname -r)/build