前言
个人比较喜欢Ubuntu的风格,因此装了win10+Ubuntu双系统,期间也踩了许多坑,然而从Ubuntu18.04到Ubuntu20.04一直有个大坑,也就是连wifi这个问题没有解决,导致一直使用USB手机分享网络或者使用网线联网(这不失为两种很好的联网方法)。好在经过一番辛苦的探索,也看了各种各样的国内外解决办法后,终于搞定了,下面说说解决的思路
思路
首先我这个是联想电脑,自带了蓝牙和wlan的驱动,参考了这篇博客,移除了联想自带的模块,问题并没有解决,然而我还是把它彻底屏蔽了,防止它与别的驱动冲突,方法如下:
blacklist modprobe:
-
打开/etc/modprobe.d/blacklist.conf,按下列格式添加你想屏蔽的内核模块
blacklist driver-name
-
在最后一行输入下列代码并保存,屏蔽联想的模块
blacklist ideapad_laptop
重启电脑生效
网卡以及驱动
Ubuntu下wifi问题一般有两种:
- 有wifi但wifi列表为空
- 压根没有wifi,进入设置发现没有wifi适配器(wifi adapter not found)
其实二者本质都是没有驱动或驱动不匹配,博主就参考了网上各种方案“成功”从第一种方案陷入了第二种(手动捂脸)
查看你的网卡,使用如下命令:
lspci | grep -i net
比如我的是rtl8822be
接下来就可以安装驱动了,参考来源Github地址
按它的步骤来,由于之前我已经屏蔽了相关联想驱动,所以blacklist那一段可以跳过,当进行到lsmod | grep rtw
发现输出为空,问题没有解决,说明内核模块没有安装上
正确安装内核模块
后来查阅相关资料发现内核是被锁定的,不能随意安装未签名或签名不过的内核模块,所以需要diable kernel lockdown,网上有几种方法,比较简单的是进入BIOS关闭UEFI的Secure Boot,方法如下:
-
进入终端输入 sudo mokutil --disable-validation
(一般来说Ubuntu自带mokutil这个模块,没有的话安装即可) -
输入8-16位密码
-
reboot进入蓝屏界面,按任意键出现四个选项,选择 change secure boot state
-
出现enter password character,输入之前输入密码的某几位,比如3就是之前输入密码的第三位
-
disable secure boot,选择yes则关闭secure boot,no则开启
-
回到最开始界面选择reboot
这里我重启后,上面的驱动就自动帮我安装上了,wifi也可以用了,问题解决!
事后重新进入BIOS开启secure boot,仍然有效!