方法一:

Ubuntu16.04无法连接Wifi解决方案 (绝对有效)

方法二:

【菜鸟向】Ubuntu无法连接wifi问题的解决

方法三:我使用的方法

1. 查找自己电脑的无线网卡型号

lspci -nnk | grep -iA2 net

我的结果为

03:00.0 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller [10ec:8168] (rev 0c)
    Subsystem: Lenovo RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller [17aa:36f3]
    Kernel driver in use: r8169
    Kernel modules: r8169
04:00.0 Network controller [0280]: Realtek Semiconductor Co., Ltd. RTL8821CE 802.11ac PCIe Wireless Network Adapter [10ec:c821]
    Subsystem: Lenovo Device [17aa:c024]
    Kernel driver in use: rtl8821ce

其中,Network controller 后面跟的是你的无线驱动,我的型号是RTL8821CE。如果你也是该款驱动,你可以去我的码云上下载驱动。如果你是其他驱动,就需要自己找驱动了。

2. 卸载你在之前两个方法中安装的bcmwl

sudo apt-get purge bcmwl-kernel-source

3. 确认内核

安装我这个驱动需要Ubuntu是4.14内核或者更高的内核,18.04和16.04都是这样。

uname -sr  查询内核

升级或者降级的教程网上有很多,比如

https://blog.csdn.net/lb838315586/article/details/82495804

https://blog.csdn.net/u013431916/article/details/82530523

4. 安装驱动

首先在下载的驱动文件夹中找到Makefile,打开进行修改,从文件里的 “export TopDIR ?= 后面开始,改成当前目录

export TopDIR ?= /home/yls/rtl8821ce-driver

然后执行以下代码

cd rtl8821-driver
make
sudo make install
sudo modprobe -a 8821ce

如果执行

sudo modprobe -a 8821ce

的时候出错,提示

modprobe: ERROR: could not insert '8821ce': Exec format error

则按照下面代码执行

make clean
make
sudo make install
sudo modprobe -a 8821ce