笔记:
这是尝试创建一个典型问题涵盖了所有“Wifi 无法使用”问题的情况。
如果您遇到了 Wifi 无法使用的情况,但以下答案都不适合您,请提出新问题,然后在您的新问题得到解答后更新这个典型问题的答案。
解决 Wifi 无法正常工作的最佳方法是什么?
我之所以问这个问题,是因为几乎每天都会有人询问有关无法正常工作的 Wifi 适配器的问题...我认为,如果 Ask Ubuntu 有一个关于如何排除无法正常工作的 Wifi 故障的系统通用策略,那将会很有帮助。
理想情况下,答案将涵盖首先尝试的简单操作(例如,Wifi 驱动程序、设置菜单),然后继续介绍越来越高级的方法 - 最后以在此网站上发布哪些信息来帮助尝试回答的人(如果不成功)结束。
我也在给出自己的答案,但我也希望你回答。因为答案越多,结果就越好。
答案1
如果您的无线网络由于没有任何可运行的驱动程序而根本无法工作,该怎么办?
首先,识别您的设备。从终端,如果它是 PCI(内部)设备:
lspci -nnk | grep 0280 -A3
你可能会看到类似这样的内容:
03:00.0 Network controller [0280]: Intel Corporation Wireless 7260 [8086:08b2] (rev 83)
Subsystem: Intel Corporation Dual Band Wireless-AC 7260 [8086:c270]
Kernel driver in use: iwlwifi
Kernel modules: iwlwifi
在这种情况下,我们看到正在使用内核驱动程序,无线上网缺少驱动程序不是问题。
或者你可能会看到类似这样的内容:
03:00.0 Network controller [0280]: MEDIATEK Corp. Device [14c3:7961]
Subsystem: AzureWave Device [1a3b:4680]
在这种情况下,没有使用内核驱动程序,因此我们必须查找并安装驱动程序。查找驱动程序的关键是 pci.id;在本例中为 14c3:7961。在 Ask Ubuntu、Ubuntu Forums 和 Google 上搜索该 pci.id。
您将找到以下四个结果之一。首先,这种情况很少见,该设备根本没有 Linux 驱动程序。我的建议是购买支持 Linux 的其他设备。这里有一个极好的资源:https://github.com/morrownr/USB-WiFi
其次,有一个 Linux 驱动程序,它出现在最新的内核版本中。上面的设备就是一个例子。Mediatek 7921 在内核版本 5.12 及更高版本中被识别。如果您的内核版本较低,请升级到最新的 Ubuntu 版本或安装 5.12 主线内核。
第三种可能性是驱动程序存在并且必须手动安装。搜索论坛可能会显示方法;毕竟,您可能不是世界上第一个拥有这款新设备的人。请务必选择与您的 Ubuntu 版本尽可能接近或完全匹配的解决方案;也就是说,Ubuntu 16.04 LTS 的程序不太可能在 Ubuntu 21.10 中运行。从终端找到您的版本:
lsb_release -d
最后,驱动程序存在但未被使用。驱动程序存在问题,导致无法加载、激活硬件和连接。一旦您知道了预期的驱动程序是什么;例如:
3:00.0 Network controller: Realtek Semiconductor Co., Ltd. RTL8822CE 802.11ac PCIe Wireless Network Adapter Subsystem: Lite-On Communications Inc
RTL8822CE 802.11ac PCIe Wireless Network Adapter
Kernel modules: rtw88_8822ce
然后检查您找到的驱动程序(内核模块)的消息日志:
sudo dmesg | grep rtw88_8822ce
是否缺少固件?是否还有其他问题?再次检查论坛,因为您不太可能是第一个遇到相同问题的用户。
如果您的无线适配器是外置的,即 USB,则适用相同的过程。找出您的设备的详细信息:
lsusb
你会发现类似这样的内容:
Bus 001 Device 005: ID 2357:0120 TP-Link Archer T2U PLUS [RTL8821AU]
<snip>
再次强调,usb.id 是查找驱动程序的关键。在本例中,它是 2357:0120。搜索后,您会在这里找到几个可接受的答案。再次强调,选择最接近或与您的 Ubuntu 版本相匹配的答案。
警告:不要添加随机驱动程序参数 sudo 作为“options iwlwifi ant_sel=1”或任何其他参数,除非您知道您正在使用该驱动程序并且您知道这是您的驱动程序可用的参数:
modinfo iwlwifi | grep parm
此外,除非您通过上述搜索 pci.id 或 usb.id 确定,否则不要为任何旧设备安装随机驱动程序。为 Atheros 设备安装 Broadcom 驱动程序或为 Intel 设备安装 Ralink 驱动程序只会浪费时间和硬盘空间。三思而后行。
如果您已经研究过您的设备并按照 Ask Ubuntu、Ubuntu 论坛和 Google 的搜索建议的步骤进行操作;如果您在 dmesg 日志中没有找到任何线索并且您的无线仍然无法工作,请提出一个新问题。我喜欢神秘事物。