Ubuntu Linux内核降级或升级到指定版本,更新引导

一直在使用Ubuntu20.04,但是最近需要4.9开头的内核版本,研究了一下降级方法,不用自己编译,还是挺简单的。

可以使用uname -r查看当前内核版本。


一、寻找所需版本内核的安装包

1.1 前往此网站:https://kernel.ubuntu.com/~kernel-ppa/mainline/

下拉列表,找到自己需要的内核版本,这里以4.9.100为例,点击进入该内核版本的详情页。
image

1.2 查看系统架构

dpkg --print-architecture

image

如上图,在网页中选择amd64的安装包下载。

二、下载安装包

注意:下载除lowlatency以外的deb包

选择第1、2、4个安装包,把这三个包下载至同一目录。
image

可以右键分别复制三个包的下载链接,再使用wget命令下载。
image
以下载4.9.100为例:

cd ~/Downloads && mkdir kernel && cd ./kernel
wget https://kernel.ubuntu.com/~kernel-ppa/mainline/v4.9.100/linux-headers-4.9.100-0409100_4.9.100-0409100.201805160931_all.deb
wget https://kernel.ubuntu.com/~kernel-ppa/mainline/v4.9.100/linux-headers-4.9.100-0409100-generic_4.9.100-0409100.201805160931_amd64.deb
wget https://kernel.ubuntu.com/~kernel-ppa/mainline/v4.9.100/linux-image-4.9.100-0409100-generic_4.9.100-0409100.201805160931_amd64.deb

三、安装内核

3.1 进入安装包保存目录

cd ~/Downloads/kernel

3.2 安装

sudo dpkg -i *.deb

查看已安装的内核版本dpkg --list | grep linux-image

neu@neu-ubuntu20:~$ dpkg --list | grep linux-image
ii  linux-image-4.15.18-041518-generic         4.15.18-041518.201804190330         amd64        Linux kernel image for version 4.15.18 on 64 bit x86 SMP
ii  linux-image-4.9.100-0409100-generic        4.9.100-0409100.201805160931        amd64        Linux kernel image for version 4.9.100 on 64 bit x86 SMP
rc  linux-image-5.11.0-27-generic              5.11.0-27.29~20.04.1                amd64        Signed kernel image generic
rc  linux-image-5.13.0-40-generic              5.13.0-40.45~20.04.1                amd64        Signed kernel image generic
rc  linux-image-5.13.0-41-generic              5.13.0-41.46~20.04.1                amd64        Signed kernel image generic
rc  linux-image-5.13.0-44-generic              5.13.0-44.49~20.04.1                amd64        Signed kernel image generic
rc  linux-image-5.13.0-48-generic              5.13.0-48.54~20.04.1                amd64        Signed kernel image generic
rc  linux-image-5.13.0-51-generic              5.13.0-51.58~20.04.1                amd64        Signed kernel image generic
rc  linux-image-5.13.0-52-generic              5.13.0-52.59~20.04.1                amd64        Signed kernel image generic
ii  linux-image-5.15.0-41-generic              5.15.0-41.44~20.04.1                amd64        Signed kernel image generic
rc  linux-image-5.15.0-43-generic              5.15.0-43.46~20.04.1                amd64        Signed kernel image generic
rc  linux-image-5.15.0-46-generic              5.15.0-46.49~20.04.1                amd64        Signed kernel image generic
ii  linux-image-5.15.0-48-generic              5.15.0-48.54~20.04.1                amd64        Signed kernel image generic
ii  linux-image-5.4.0-128-generic              5.4.0-128.144                       amd64        Signed kernel image generic
ii  linux-image-extra-virtual                  5.4.0.128.129                       amd64        Extra drivers for Virtual Linux kernel image
ii  linux-image-generic                        5.4.0.128.129                       amd64        Generic Linux kernel image
ii  linux-image-generic-hwe-20.04              5.15.0.48.54~20.04.18               amd64        Generic Linux kernel image

可以看到内核版本4.9.100-0409100-generic已成功安装。

3.3 更新

如果直接使用此内核重启,在启动时会出现以下错误:

Kernel Panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)

这就需要update-initramfs和更新grub。

# 将4.9.100-0409100-generic替换你需要的version
sudo update-initramfs -u -k 4.9.100-0409100-generic

修改grub使4.9.100-0409100-generic为默认启动项

sudo nano /etc/default/grub

GRUB_DEFAULT一项修改为:

"Advanced options for Ubuntu>Ubuntu, with Linux 4.9.100-0409100-generic"

同理,记得把4.9.100-0409100-generic替换你需要的version

image

更新grub

sudo update-grub

四、查看是否安装成功

重启后,查看内核版本。

sudo reboot
uname -r

如果输出为要安装的内核版本,则操作成功。

neu@neu-ubuntu20:~$ uname -r
4.9.100-0409100-generic
posted @ 2022-10-13 01:46  云吱  阅读(8723)  评论(0编辑  收藏  举报