![Ubuntu 16.04 上的 WiFi 连接不稳定](https://linux22.com/image/1154334/Ubuntu%2016.04%20%E4%B8%8A%E7%9A%84%20WiFi%20%E8%BF%9E%E6%8E%A5%E4%B8%8D%E7%A8%B3%E5%AE%9A.png)
每次我启动计算机时,我都会遇到 WiFi 问题,有一个图标,表明我已连接到 WiFi 点,但没有真正的连接,所以我必须重新启动 PC,并且只有在 WiFi 正常工作后才能重新启动。
以下是无线信息脚本的输出:
https://paste.ubuntu.com/p/ngdrnq2j8z/
请帮忙
更新:由于某种神奇的原因,它开始正常工作,而我什么也没做。我不知道我是否应该测试你的建议,以及我是否可以测试它,因为到目前为止一切都很好。无论如何,感谢你们的帮助,如果问题再次出现,我会努力解决它。
答案1
您的 Wifi 卡是Qualcomm Atheros 设备 [168c:0042](修订版 31)。您可以查看许多错误报告来查找类似问题和推荐的解决方案:
- Qualcomm Atheros Device [168c:0042] (rev 30) 无线设备无法正常工作
- Wifi 未激活:Qualcomm Atheros 设备 [168c:0042] (rev 30)
- 168c:0042(修订版 30)不支持 wifi
- Qualcomm atheros 网络控制器 [168c:0042](rev 30)无法工作
- 168c:0042(修订版 30) Qualcomm Atheros 设备
- [168c:0042] (rev 30) acer E 15 中 wifi 无法使用
- 不支持 Qualcomm Atheros 无线网卡 [168c:003e] (rev 32)
- Qualcomm Atheros 设备 [168c:0042] (rev 30) 无法在 Ubuntu 上运行
- Qualcomm Atheros 设备 [168c:0042](rev 30)无法在 Ubuntu 14.04 上运行
- Qualcomm Atheros 设备 [168c:0042] (rev 30) 无法在 Ubuntu 上运行
- Qualcomm Atheros 设备 [168c:0042](rev 30)无法在 Ubuntu 14.04 上运行
除了错误报告之外,各种论坛上还发布了问题和解决方案:
- Qualcomm Atheros [168c:0042] (rev 30) 的无线适配器问题
- Qualcomm Atheros 设备 [168c:0042] (rev 30) 在 Ubuntu 14.04 上无法运行
- Qualcomm Atheros Device [168c:0042] (rev 30) Wi-Fi 驱动程序安装
我有一张类似的卡片,使用方法如下lspci -nnv
:
3c:00.0 Network controller [0280]: Qualcomm Atheros QCA6174 802.11ac Wireless Network Adapter [168c:003e] (rev 32)
Subsystem: Bigfoot Networks, Inc. QCA6174 802.11ac Wireless Network Adapter [1a56:1535]
Flags: bus master, fast devsel, latency 0, IRQ 136
Memory at dd200000 (64-bit, non-prefetchable) [size=2M]
Capabilities: <access denied>
Kernel driver in use: ath10k_pci
Kernel modules: ath10k_pci
与您的卡使用相同的驱动程序ath10k_pci
。因此,“一个驱动程序修复所有问题”方法适用于您的卡和我的卡的错误。我一直在关注的一个错误已经修复,但它花了两年到达上游:
为了缩小对我影响最大的错误的范围,我使用了dmesg | grep ath10k
:
[ 3.973278] ath10k_pci 0000:3c:00.0: enabling device (0000 -> 0002)
[ 3.974377] ath10k_pci 0000:3c:00.0: pci irq msi oper_irq_mode 2 irq_mode 0 reset_mode 0
[ 4.253816] ath10k_pci 0000:3c:00.0: Direct firmware load for ath10k/pre-cal-pci-0000:3c:00.0.bin failed with error -2
[ 4.253822] ath10k_pci 0000:3c:00.0: Direct firmware load for ath10k/cal-pci-0000:3c:00.0.bin failed with error -2
[ 4.254750] ath10k_pci 0000:3c:00.0: qca6174 hw3.2 target 0x05030000 chip_id 0x00340aff sub 1a56:1535
[ 4.254752] ath10k_pci 0000:3c:00.0: kconfig debug 0 debugfs 1 tracing 1 dfs 0 testmode 0
[ 4.255179] ath10k_pci 0000:3c:00.0: firmware ver WLAN.RM.4.4-00022-QCARMSWPZ-2 api 6 features wowlan,ignore-otp crc32 4d458559
[ 4.318661] ath10k_pci 0000:3c:00.0: board_file api 2 bmi_id N/A crc32 6fc88fe7
[ 4.885699] ath10k_pci 0000:3c:00.0: Unknown eventid: 90118
[ 4.886304] ath10k_pci 0000:3c:00.0: htt-ver 3.32 wmi-op 4 htt-op 3 cal otp max-sta 32 raw 0 hwcrypto 1
[ 4.987424] ath10k_pci 0000:3c:00.0 wlp60s0: renamed from wlan0
[ 5.820647] ath10k_pci 0000:3c:00.0: Unknown eventid: 90118
不管你信不信,这就是今天的dmesg
修复错误后。可以在刚刚链接的 bug 报告中查看包含 bug 的日志。
我希望我能为你发布一行答案,但现在我只能为你指明完成作业的正确方向。
答案2
对于这个问题,我会
sudo sed -i 's/3/2/' /etc/NetworkManager/conf.d/*
要禁用电源管理,我们可以从上游更新固件,因为它最近已更新
cd /lib/firmware/ath10k/QCA9377/hw1.0
sudo wget https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/plain/ath10k/QCA9377/hw1.0/board-2.bin
sudo wget https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/plain/ath10k/QCA9377/hw1.0/board.bin
sudo wget https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/plain/ath10k/QCA9377/hw1.0/firmware-5.bin
我还建议进入 wifi 路由器设置,将加密更改为仅使用 AES/PSK/CCMP 的 WPA2,不使用 WEP 或 TKIP
重启