一、内核下载
官方网址
Ubuntu提供的内核下载地址
清华镜像站
二、安装编译依赖项
更新操作
sudo apt-get upgrade
sudo apt-get update
依赖项
sudo apt-get install libncurses5-dev openssl libssl-dev
sudo apt-get install build-essential openssl
sudo apt-get install pkg-config
sudo apt-get install libc6-dev
sudo apt-get install bison
sudo apt-get install flex
sudo apt-get install libelf-dev
sudo apt-get install zlibc minizip
sudo apt-get install libidn11-dev libidn11
三、解压内核到指定路径
以Linux-5.12.13为例
sudo tar -xavf linux-5.12.13.tar.xz -C /usr/src
sudo tar -xavf linux-5.12.13.tar.xz -C /usr/src
四、进入到解压的内核目录
cd /usr/src/linux-5.12.13
五、净化源码
此处可选,具体功能未了解
sudo make mrproper
sudo make clean
六、对内核选项进行设置
得到内核之后要对其进行配置,配置的方法是将现有内核的配置选项复制到要编译的新内核上去。下面命令是将现有的内核(5.8.0-59-generic)版本的config配置信息复制到现在目录下的 .config里面
sudo cp /boot/config-5.8.0-59-generic .config
此处可选命令
sudo cp /boot/config-$(uname -r) .config
之后对内核进行配置,此处配置是一个图形界面,选择Load-Enter-Save-Enter-Exit-EXit。
之后进行编译及安装模块,-j4表示线程同时编译以提高编译速度。
sudo make -j4
sudo make modules -j4
sudo make modules_install -j4
此处,make modules_install时可能会遇到以下错误
make[1]: *** 没有规则可制作目标“debian/canonical-certs.pem”,由“certs/x509
解决方法:进入所安装内核解压文件目录下,编辑,config文件,将其中CONFIG_SYSTEM_TRUSTED_KEYS="debian/canonical-certs.pem"引号中部分删除。
七、安装
在所安装的内核目录(如/usr/src/linux-5.12.13/)下执行下列命令
sudo make install
sudo mkinitramfs -o /boot/initrd.img-5.12.13
sudo update-initramfs -c -k 5.12.13
sudo update-grub2
八、检查结果
重启,查看内核版本
sudo reboot
uname -r
注:实际安装后通过(uname -r)命令检查当前内核为所安装内核,但是通过(dpkg --list | grep linux)命令打印信息,未看到所安装的内核,此处有待解决。