1、最近原来写的测试代码在Ubuntu18 可以内核版本,在新的安装的Ubuntu20 上无法运行,各种操作后想排除下是否是因为内核版本过高的原因,因此用到降低ubuntu内核版本的操作:

原ubuntu18 内核版本

Ubuntu20内核版本

2、首先通过apt-cache search linux| grep 5.4.0-80 查看目前的版本

3、然后  输入下面命令进行安装:

sudo  apt-get install linux-headers-5.4.0-80-generic linux-image-5.4.0-80-generic

安装对应的内容即可

4、安装完成后可以查看此时内核版本有几个:

dpkg --get-selections | grep linux-image

5、安装成功后设置启动即可选择对应的项,在此处遇到的问题是一直无法进入选择进入哪个ubuntu内核版本的项目,查看资料可以通过下面方式进入:设置 GRUB_TIMEOUT 设置为 -1 。 

 sudo gedit /etc/default/grub

在这里插入图片描述

同时此时设置把GRUB_TIME_STYLE=hidden注释掉;将GRUB_CMDLINE_LINUX_DEFAULT的值改为text;

输入命令,更新grub配置。

sudo update-grub

6、重启后可进入ubuntu高级选项

(此图为随意摘抄,按照自己版本来) 

7、此时选择刚才设置的低版本的内核,不要选择recovery mode

8、重新进入ubuntu系统后,可查看内核版本

 到此ubunt内核版本降低完成

本次参考的链接:ubuntu降低你使用的内核到指定版本_良知犹存的博客-CSDN博客

后续可能出现问题:

按照上述过程重启后进行加载驱动,执行命令sudo modprobe mtd 时出现错误提示如下所示:

modprobe: FATAL: Module mtd not found in directory /lib/modules/5.4.0-80-generic

此时可以通过命令查看对比与过去高版本的缺少的内容:查看命令:

dpkg --get-selections  | grep linux

 此时缺少什么就安装对应安装的版本内容即可:

sudo apt-get install modules-extra-5.4.0-80-generic

安装完成之后再次进行查看会出现如下如图所示:

 此时再次去安装驱动,执行命令:

sudo modprobe mtd

此时上述问题发现已解决。

如果需要修改具体版本直接用GRUB_DEFAULT="1> 2"的方式参考这篇文章写的很详细

ubuntu18.04.4更换内核版本_小立爱学习的博客-CSDN博客_ubuntu更换内核

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐