在一次系统更新后,原本正常使用的 USB 无线网卡突然消失。系统中只剩下有线网卡和内置无线网卡,插入的 USB 无线网卡无法识别,导致无法通过 Wi-Fi 连接网络。以下记录了排查思路与解决方法。
问题现象
更新完成并重启后,使用以下命令查看网络设备:
ip link
nmcli device status
结果显示:
- 有线网卡接口正常存在;
- 内置无线网卡依然存在但未连接;
- USB 无线网卡接口完全消失。
通过 lsusb 可以看到设备 ID:
0bda:b851 Realtek Semiconductor Corp. 802.11ax WLAN Adapter
说明硬件层面仍然被系统识别,但未生成 wlanX 网络接口。
排查过程
- 确认硬件识别
lsusb输出正常,确认 USB 总线上仍然存在该设备。 - 检查驱动加载
使用dmesg查询时,发现内核未能加载对应驱动。
这类 Realtek USB 网卡依赖额外的 DKMS 驱动,而 Arch Linux 内核默认不包含。 - 尝试安装驱动
首先尝试安装rtl8852bu-dkms-git,但问题未解决,接口依然缺失。 - 更换正确驱动
通过设备 ID (0bda:b851) 确认芯片型号为 Realtek RTL8851BU。
随后卸载原有驱动并重新安装:yay -S rtl8851bu-dkms-git安装完成后重启系统,网卡恢复正常。
验证结果
执行以下命令确认状态:
ip link
nmcli device status
lsmod | grep 8851
结果显示:
wlan1接口成功出现并连接至 Wi-Fi。lsmod输出中可见8851bu模块已加载。- 网络连接恢复正常。
额外生成的 ap0、p2p-dev-* 接口为驱动自动创建的虚拟接口,不影响正常使用。
总结
此次问题的根源在于:系统更新导致原本的 USB 无线网卡驱动失效,安装了错误的模块(8852 系列),而实际设备是 RTL8851BU,需要对应的 rtl8851bu-dkms-git 驱动。
解决步骤可以总结为:
- 确认 USB 设备 ID (
lsusb)。 - 对照设备 ID 确认芯片型号。
- 安装对应的 DKMS 驱动。
- 重启并确认接口与驱动加载情况。
通过这些步骤,USB 无线网卡在 Arch Linux 下重新恢复正常使用。