近日在电脑上安装了Ubuntu20.04 5.13双系统,进入系统后没有WiFi和蓝牙开启,就这个问题,有如下的解决方案
首先我们想到的问题应该是系统与无线网卡驱动是否匹配,所以如下操作
1查看系统本身的匹配驱动
在Ubuntu上输入命令
dmesg
查看系统可匹配的驱动
你可以发现 匹配的版本从39-64,并且红字写到 no suitable firmware found! 这说明内核和驱动不匹配,那么我们去查看我们电脑的无线网卡驱动
2 查看你电脑无线网卡驱动的固件,
在windows上打开设计——网络与Internet——WLAN——属性,可查看驱动设备,笔者电脑华为matebookD16,描述如下,
或者Linux上命令行输入
lspci -nn | grep -i net
, 查看自己的型号 如[8086:51f0]
PCI devices 在这个网站上查询自己的网卡型号,例如笔者的[8086:51f0]
可以看到与windows上查询结果一样 ,为Wi-Fi 6 AX201 160MHz
3 在官网查找与你设备相应的无线网卡驱动固件
英特尔® 无线适配器的 Linux* 支持 进入网站,查找与你设备对应的固件可以发现,我们需要的固件是 iwlwifi-Qu-48-13675109.0.tgz,但是这个48是在我们系统的内核匹配范围(39-63)内的,所以是别的问题,你无需下载这个固件并安装,硬件版本够了,但linux内核版本不匹配,那么我们接下来要升级linux内核
下面我们下载最新硬件驱动
这一步保证硬件驱动最新,消除可能出现的硬件bug,升级Linux内核是保证Linux版本配套
一般说来即使硬件运行正常,linux正常,也可能存在硬件bug或隐患,所以升级最新版硬件是最合理的选择
下载最新内核驱动
国内镜像网站Index of /ubuntu/pool/main/l/linux-firmware/
上下载最新的硬件驱动 (最新是187.34 all.deb)笔者选择了187.33 all.deb
下载完成后命令行输入su然后
dpkg -i 压缩文件名
你可以在此步骤之后重启 发现问题没有解决,那么我们按着步骤进行下一步
升级Linux内核
进入网站,Linux内核找到你要升级的版本,这里笔者选择了v5.15.20/
点开之后
若为x86芯片则选择下图中的1346下载
输入命令安装文件
su(进入管理员模式)dpkg -i *.deb
之后输入reboot重启系统
就可以打开WiFi了
注意:
1 因为没有网络,笔者选择在windows上下载好所需文件,随后用U盘拷贝到Ubuntu系统,当然你也可以选择有线网络或者USB共享网络
2 按照很多博客的说法 要删除pnvm文件,笔者没有删除这类文件解决了问题,由于版本不同,建议大家不要随意删除文件
特别鸣谢