ubuntu编译内核教程

准备

更新软件源

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

查看内核版本是否正确

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。