如何解决 Arch Linux 和 WPA2 网络之间的 wifi 连接问题?

如何解决 Arch Linux 和 WPA2 网络之间的 wifi 连接问题?

我的家庭网络使用 WPA2 进行加密。为了从我的 Arch Linux 安装连接到它,我首先尝试使用 NetworkManager,但是,最多只能连接一分钟,然后就断开连接。

我用 wicd 替换了它,直到最近它的工作还令人满意。此后,如果启动时无法建立连接,或者失去连接,将无法建立连接。尝试重新连接 GUI 会使系统速度变慢,以至于我必须从 X 切换到 tty 并终止该进程。在这些情况下,curses 接口无法建立连接,但不会影响系统性能。

重新启动守护进程不足以将其从错误状态中修复。我需要关闭并重新打开系统电源。

同一台笔记本电脑上的 Windows 安装确实遇到了一些间歇性连接问题(这是一个为网络供电的蹩脚 ISP 路由器),但可以从中恢复,只需要重新连接到网络。在使用 Arch Linux 之前,我曾在笔记本电脑上使用 Ubuntu 作为 Linux 发行版,其结果与 Windows 相同。

可能是什么原因导致此问题(我怀疑可能与之前的 NetworkManager 问题有关),以及如何解决它?

就其价值而言,我的无线网卡是 Broadcom BCM4312,它使用 b43 驱动程序。

编辑:在 wicd 无法连接时尝试运行 wpa_supplicant 会产生以下输出:

ioctl[SIOCSIWSCAN]: 设备或资源繁忙
无法启动 AP 扫描。
ioctl[SIOCSIWSCAN]: 设备或资源繁忙
无法启动 AP 扫描。
未找到当前 AP 的网络配置
CTRL-EVENT-DISCONNECTED bssid=00:00:00:00:00:00 原因=0
ioctl[SIOCSIWSCAN]: 设备或资源繁忙
无法启动 AP 扫描。

进一步编辑:当系统使用电池供电时,更有可能出现此问题,但插入电源时仍有可能出现。

编辑3:这几乎肯定与省电选项有关。请多加注意,当系统依靠电池供电运行、长时间闲置或盖子关闭时,总会发生这种情况。

答案1

您可以首先手动运行 wpa_supplicant 而不使用 -B 选项:它将保留在前台并向您显示正在发生的情况。 Arch wiki 有一个很好的部分wpa_请求者

答案2

禁用无线卡的电源管理:

  • 打开终端并运行以下命令来创建配置文件:
    sudo nano /etc/NetworkManager/conf.d/wifi-powersave-off.conf
    
  • 将以下行添加到文件中:
    [connection]
    wifi.powersave = 2
    
  • Ctrl按+保存文件O,然后按Ctrl+退出文本编辑器X
  • 使用以下命令重新启动 NetworkManager 服务:
    sudo systemctl restart NetworkManager
    

调整电源管理设置:

  • 创建或编辑配置文件:
    sudo nano /etc/modprobe.d/b43.conf
    
  • 将以下行添加到文件中:
    options b43 btcoex=0 qos=0
    
  • Ctrl按+保存文件O,然后按Ctrl+退出文本编辑器X

重新启动您的系统。

更新固件和驱动程序:

  • 检查 Broadcom BCM4312 无线卡固件和驱动程序的任何可用更新。请按照相应的说明进行安装。

禁用硬件加密:

  • 编辑配置文件:
    sudo nano /etc/modprobe.d/b43.conf
    
  • 将以下行添加到文件中:
    options b43 nohwcrypt=1
    
  • Ctrl按+保存文件O,然后按Ctrl+退出文本编辑器X

重新启动您的系统。

相关内容