Ubuntu20.04更换Linux内核 | 来自缤纷多彩的灰

Ubuntu20.04更换Linux内核 @ WHlcj | 2022-03-26T14:18:54+08:00 | 2 分钟阅读 | 更新于 2023-09-09T14:25:58+08:00

花了两天时间,把网上的各色各样的教程都试了一遍后还是没成功,但是却误打误撞自己找到了正确答案。 我想说,改linux内核,看这一篇就够了!

前言

本教程是本人在目前网上不断查找资料试错总结出来的一种可行的方法,举例VM下linux ubuntu20.04切换系统内核5.13.0-37切换至5.4.0-65内核,但是切换方法可通用任何内核版本,话不多说咱们直接开始。

一.检查当前的内核版本

1
2
 #输入命令
uname -r

这里我系统原本的内核版本为5.13.0-37-generic.

二.下载指定的内核版本

读者可通过http://ftp.sjtu.edu.cn/sites/ftp.kernel.org/pub/linux/kernel/v5.x/查找自己想要的版本。这里我需要更换为5.4.0-65-generic所以输入命令:

1
2
sudo apt-get install linux-image-5.4.0-65-generic
sudo apt-get install linux-headers-5.4.0-65-generic

这里可能会出现如下报错信息:

只需先升级软件源再重新下载即可:

1
2
# 输入指令
sudo apt-get update

然后更新并重启

1
2
3
4
#输入指令
sudo update-initramfs -u -k all
sudo update-grub
reboot

此时再次查看系统内核,若更换成功,那么恭喜你!但是若没有更换成功请继续往下看~

三.查找想切换的内核

1
2
#输入指令
grep gnulinux /boot/grub/grub.cfg

返回结果如下图,这里我想切换的版本是刚下载下来的5.4.0-65-generic这个根据你们想要的版本选择,复制下第二个蓝色框框的内容,这是你要升级的内核版本,蓝色方框是跟步骤一里查找的内核一致的,注意不要选择recovery模式的.

根据两个蓝色方框部分得到的内核字符串组合,以留备用: gnulinux-advanced-2c486937-4aae-40f9-8a2d-796d41497f32>gnulinux-5.4.0-65-generic-advanced-d4acfbf9-2b86-445e-b049-53c6446aaf5e

注意将原内核字符串的simple改为advanced,两个字符串中间加上一个 “>”

四.修改配置文件

1
2
#输入指令
sudo gedit /etc/default/grub

将下图原为 GRUB_DEFALUT=0替换为刚组合的字符串即可

然后点save保存

五.更新grub:

1
2
#输入指令
sudo update-grub

更新完之后,重启虚拟机

1
2
#输入指令
reboot

重启后再次检查内核

1
2
#输入指令
uname -r

切换成功:

六.删除多余版本(根据需要,选择参考)

若读者想要清除系统内多余的内核版本,可参考以下步骤.

1
2
#查看系统里面的内核
dpkg --get-selections |grep linux
1
2
#删除内核
sudo apt-get remove linux-xxxxxxxx
1
2
#清除空文件夹
sudo apt-get purge linux-xxxxxxxx