BLOG

linux内核编译安装(Ubuntu替换内核)

前言:Ubuntu替换内核一般是不会删除自己Ubuntu里面的东西的(只是内核改变,其它影响,放心搞就是了,而且可以变回原来的内核)

实验环境:

OS:Ubuntu 20.04.2 LTSOld Kernel:linux 5.15.0New Kernel: linux 5.15.0(我测试过的只有原版本,升级其它版本试了不能开机)注: 查看当前内核版本命令 "uname -r"

源码获取:

从官网获得:https://kernel.org/

https://www.kernel.org/pub/ -> linux/kernel/ -> 自己选一个版本

编译:

(1)解压

tar –czf file.tar.gz

(2)安装必要包

# 首先更新软件源

sudo apt-get update

sudo apt-get install libncurses5-dev build-essential kernel-package flex bison libelf-dev libssl-dev

(3)清理内核

sudo make clean

sudo make mrproper

(4)复制配置文件

# 进入解压后的文件路径

# 拷贝一个已有的配置文件

sudo cp /boot/config-x-x-x .config

# 根据自己的需要去配置内核

sudo make menuconfig

注意:在我们把文件拷贝过来的时候要修改一下.config文件,不然会报错

把上图框选的两个东西删除

(5)编译

sudo make -j8

sudo make modules -j8

安装:

sudo make modules_install

sudo make install

更改启动内核:

(1)修改启动方式

sudo vim /etc/default/grub

更改为一下内容

#file::/etc/default/grub

#2、开机进入grub菜单可以主动选择以哪个内核进入系统

GRUB_DEFAULT=0

#************* Display grub *************

GRUB_HIDDEN_TIMEOUT_QUIET=true

GRUB_TIMEOUT=10

#************** End Display *************

GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"

GRUB_CMDLINE_LINUX=""

(2)更新grub文件

sudo update-grub

重启:

sudo reboot

(1)选择Advanced options for Ubuntu

(2)选择新添加的内核版本

结束

参考文档:https://blog.csdn.net/qq_36393978/article/details/118391685