准备
更新软件源
sudo apt update
更新软件
sudo apt upgrade
看一下我的这两篇文章
ubuntu配置ccache
Ubuntu20.04编译内核所需依赖
备份
备份一下/boot/grub/grub.cfg
下载内核源码
去linux内核官方网站下载内核源代码,选择stable旁边的tarball下载,可以事先执行
uname -r
来查看内核版本是否低于最新版本
开始编译
解压
cd ~
tar -xavf linux-5.6.15.tar.xz
到你下载的目录解压,最好解压在主目录(~)下,有教程说必须要解压在/usr/src下,但其实解压在任何目录都可以,只是解压在/usr/src的话有可能会在编译的时候因为root用户修改了系统的关键信息使其崩溃。我下载的版本号是5.6.15,具体文件名以你下载的为准,可以输入前面几个字母后双击Tab键补全
净化内核源码
make mrproper
也可以在想重新编译时执行这个命令
配置内核
执行make xconfig,会自动选取当前内核的配置文件当做.config文件,也可以在这个基础上修改。
make xconfig
点击save然后退出,最好把搞出来的.config备份一下。
编译并安装内核
注意,此次编译内核需要的时间过长,请配置好ccache
编译主体
make bzImage -j6
这里的6是你的电脑CPU的线程数,自己查一下
编译模块
耗时最久
make modules -j6
安装模块
make modules_install -j6
此时/lib/modules下应该会出现内核版本号文件夹
复制三个文件
sudo mkinitramfs /lib/modules/5.6.15 -o /boot/initrd.img-5.6.15-generic
sudo cp ~/linux-5.6.15/arch/x86/bzImage /boot/vmlinuz-5.6.15-generic
sudo cp ~/linux-5.6.15/System.map /boot/System.map-5.6.15
反正make install 这个命令我没试过,可以试试
更新grub
update-grub2
然后重启即可
重启后查看内核版本号
uname -r
查看内核版本是否正确