【学习番外篇2】Ubuntu系统降内核无法联网+双内核切换

您所在的位置:网站首页 ubuntu系统没有网络 【学习番外篇2】Ubuntu系统降内核无法联网+双内核切换

【学习番外篇2】Ubuntu系统降内核无法联网+双内核切换

2023-11-14 10:18| 来源: 网络整理| 查看: 265

文章目录 前言一、下载更新选择内核二、摸索到解决1.噩梦伊始2.噩梦降临3.梦醒时分4.设置引导界面以显示引导界面(多内核共存,重点) 总结Reference

前言

嗯,延续惯例,介绍背景+吐槽。 如有缘看到此文,并有可以参考的地方,请看完全文再进行,否则后果自负。

背景: 实验室能供我瞎造的linux系统是装的Ubuntu18.04,内核5.4.0-73-generic,然而吧,这RealSense SDK2.0只支持4.4、4. 8、4.10、4.13、4.15及4.16。 诶,还能咋滴,开始csdn查:“Ubuntu18.04怎么降内核?” 很快啊,按着教程装了个4.15.0-135-generic的,但是不知道怎么切换内核,想着反正也不要5.4版本的,就按着教程rm掉呗(嗯,我就是个憨憨),最后系统只剩一个4.15的内核,可以,reboot。 结果,检测不到网卡和无线的驱动,人傻,又开始csdn:“Ubuntu系统无法联网”,然而搞了半天,按着各种方法都没有什么用,要么是虚拟机的,要么是刚安装完后找不到网络的,最后当然是选择重下内核,替代。其实整个的思想就是重新下载内核,删除不需要的内核。

因为走了很多弯路,故记录过程,留给以后的自己和像我一样碰到此情此景不知所措的小小白,各位dalao不喜勿喷。

设备信息: 操作环境:Ubuntu18.04 内核信息:初始:5.4.0-73-generic;终版:4.15.0-041500-generic+5.4.0-050400-generic

一、下载更新选择内核

step1:编辑/etc/apt/sources.list文件,在最后一行加入

deb http://security.ubuntu.com/ubuntu trusty-security main

step2:更新sudo apt-get update

step3:下载自己所想要的内核

sudo apt-get install linux-image-4.15.0-135-generic

我此时下载安装的是linux-image-4.15.0-135-generic

step4:查看是否安装成功

dpkg --get-selections| grep linux-image-4.15.0-135-generic

step5:编辑vim /etc/default/grub文件,找到GRUB_DEFAULT=0 将它修改为

在这里插入图片描述

GRUB_DEFAULT="Advanced options for Ubuntu>Ubuntu, with Linux 4.15.0-135-generic"

优先选择这个登陆。

step6:更新一下 Grub 引导

sudo update-grub

step7:重启系统

sudo reboot

不出意外,重启后就是新的内核了,可以使用命令:uname -r查看当前的内核。

二、摸索到解决 1.噩梦伊始

然而吧,我就是启动不起来,于是乎我查找第二篇教程,这篇教程也可以说是对一个新手噩梦的开始,因为我启动不起来,所以按着第二个教程一步步操作,删除了原内核,只在系统中留一个内核,结果自闭。 不是教程作者的锅哈,只不过对于小白来说不是很友好,但作者没有引导读者从Grub选择内核的角度登陆,我就觉得不是很合理。 过程记录如下:

step1:在更新Grub 引导

sudo update-grub

可以看到此时系统的内核核心文件(这是我现在的系统信息,之前没截图)

在这里插入图片描述

教程教我的是,把高版本的文件核心文件删去,即 step2(这一步是否执行,自己斟酌):

sudo rm -rf /boot/vmlinuz-5.4.0-73-generic sudo rm -rf /boot/initrd.img-5.4.0-73-generic

注:查过很多帖子有许多开发者表明,不会轻易使用rm命令,后果难保。

step3:删除系统中多余的内核软件包,把不需要的删掉 先看看安装了什么内核:sudo dpkg --get-selections |grep linux

(此处无图,忘了截图…)

内核后标明install的就是此时系统中存在的软件包,有的内核后面是deinstall,那些也可以直接删除:

sudo dpkg -P linux-headers-5.4.0-73-generic //dpkg安装的内核仍然用dpkg删除,具体删除内容自己参考自己系统的文件情况 sudo apt autoremove linux-headers-5.4.0-73-generic //apt安装的内核用apt删除,具体删除内容自己参考自己系统的文件情况 sudo apt purge linux-headers-5.4.0-73-generic //同上

step4:最后更新一下Grub:sudo update-grub

小结:再次更新Grub 引导就只剩上文安装好的4.15.0-135-generic内核,然后重启,确实是4.15.0-135-generic内核了,因为系统里只有一个内核。 而,这个新内核却无任何的网卡驱动,连我外置的无线模块都识别不到,更别提原本就有的有线网卡了。如果我没有把原来的内核rm和卸载的话,我就可以切换到另一个内核进行一些处理。

所以指出上述做法有弊端,故在升级和降级应保留多个内核,用引导的方式决定每次进入哪个内核,提高容错率。

2.噩梦降临

由于没有网络,所以csdn中任何在系统中apt install的我通通做不了。 什么ifconfig后的eth0…也跟我没关系,只能尝试着做一些完全不需要网络的尝试,如:service NetworkManager stop、start、restart之类的,毕竟也不知道是什么问题。 后面冷静下来思考是不是驱动问题,想重新下驱动,但是没有找到单独下驱动的方法,一般的帖子写的都是“刚安装完Ubuntu系统却无法联网”,这种直接在映像文件中的找到bcmwl-kernel-source_xxxxxx_amd64.deb包重新安装一次即可(这里推荐一个比较好的帖子[4]),但是我不是原来映像文件中的内核,而且删了原来内核的核心文件,嗯,原地爆炸。 我连usb共享手机网络都试了,结果也还是连不上网,卡住…

3.梦醒时分

嗯,想办法重新下新的内核覆盖,然后就成了呗。

内核下载网址([3]博主提供): https://kernel.ubuntu.com/~kernel-ppa/mainline/

step1:我直接在能联网的Windows系统中,登入网站,在网站中下载自己想要的版本,以5.4.0为例, 64位电脑,则找到Build for amd64 …,如果是其他芯片就找到对应项目: 在这里插入图片描述 下载图中不包含lowlatency的所有安装包,4.17之后的版本有module的包,所以一共下载4个包;而4.17之前的没有,一共下载3个包。

注:linux的内核除了generic(通用)类型外还有至少3种:lowlatency(低延时)、preempt(抢占式)和realtime(实时),该网站好像就只有generic和lowlatency,一般选择generic。

step2:用U盘拷贝到Ubuntu系统中(没网嘛,有什么办法),用命令行sudo dpkg -i 安装刚刚下载的包:

// 可以依次安装 sudo dpkg -i linux-headers-5.4.0-050400.201911242031_all.deb sudo dpkg -i linux-headers-5.4.0-050400-generic_5.4.0-050400.201911242031_amd64.deb sudo dpkg -i linux-image-unsigned-5.4.0-050400-generic_5.4.0-050400.201911242031_amd64.deb sudo dpkg -i linux-modules-5.4.0-050400-generic_5.4.0-050400.201911242031_amd64.deb //也可以把他们放在一个文件夹下一块安装 sudo dpkg -i linux* //如果安装过程报错,执行一下命令修复 sudo apt-get -f install //如果无法修复,则需要依次安装每个包,查看缺少了什么依赖。然后手动安装上去。

step3:更新Grub引导并重启

sudo update-grub sudo reboot

重新开机后查看内核uname -a,应该可以看到默认使用的是最新版本的内核。

4.设置引导界面以显示引导界面(多内核共存,重点)

先打开/etc/default/grub文件

在这里插入图片描述 如图所示,将GRUB_DEFAULT=0,将GRUB_TIMEOUT_STYLE=hidden注释掉,然后GRUB_TIMEOUT=10(选择时间只有10s,你可以根据自己的想法设置长或者短一点),最后将GRUB_CMDLINE_LINUX_DEFAULT="text"。

就可以在启动Ubuntu系统的时候,选择不同的内核系统进行,实现多内核共存。

总结

作为小白,除了经验不足、学识浅薄之外,最主要的问题是还是遇事没办法冷静分析,一上来就想着打开csdn对话框,然后如果找不到答案就重装系统,这都是不可取的。

这篇文章中走的很多弯路其实都是因为不愿思考、不善思考,问题并不难解决。 希望往后的自己可以多思考、冷静分析、提高做事情的效率。

Reference

[1]. https://www.cnblogs.com/minseo/p/13065321.html [2]. https://blog.csdn.net/qq_32590631/article/details/114868606 [3]. https://blog.csdn.net/surtol/article/details/102497572 [4]. https://blog.csdn.net/ifmvo/article/details/54023628



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3