Ubuntu Linux内核降级或升级到指定版本,更新引导
一直在使用Ubuntu20.04,但是最近需要4.9开头的内核版本,研究了一下降级方法,不用自己编译,还是挺简单的。
可以使用
uname -r
查看当前内核版本。
一、寻找所需版本内核的安装包
1.1 前往此网站:https://kernel.ubuntu.com/~kernel-ppa/mainline/
下拉列表,找到自己需要的内核版本,这里以4.9.100
为例,点击进入该内核版本的详情页。
1.2 查看系统架构
dpkg --print-architecture
如上图,在网页中选择amd64的安装包下载。
二、下载安装包
注意:下载除
lowlatency
以外的deb包
选择第1、2、4个安装包,把这三个包下载至同一目录。
可以右键分别复制三个包的下载链接,再使用wget
命令下载。
以下载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
更新grub
sudo update-grub
四、查看是否安装成功
重启后,查看内核版本。
sudo reboot
uname -r
如果输出为要安装的内核版本,则操作成功。
neu@neu-ubuntu20:~$ uname -r
4.9.100-0409100-generic