如何配置 wpa_supplicant.conf 以便 NetworkManager 正确管理 WiFi?

如何配置 wpa_supplicant.conf 以便 NetworkManager 正确管理 WiFi?

我在 Wrap7 主板(运行嵌入式 Linux 发行版)上安装了 NetworkManager,但 NetworkManager 无法通过 wpa_supplicant.conf 的默认内容检测 WiFi 接口。以下是 wpa_supplicant.conf 的默认内容:

root@imx7s-warp-mbl:~# cat /etc/wpa_supplicant.conf
ctrl_interface=/var/run/wpa_supplicant
ctrl_interface_group=0
update_config=1

network={
        key_mgmt=NONE
}

如果我使用特定 WiFi 网络的属性(ssid、wep_key0...)手动更新 wpa_supplicant.conf 文件,网络管理器将开始检测 WiFi 网络...但这当然是一个不可接受的解决方案。我需要允许 NetworkManager 执行此功能。

所以问题是,我应该如何更改 wpa_supplicant.conf 文件的默认内容以允许 NetworkManager 管理 wifi 连接?

答案1

你不应该配置它根本。应该运行的唯一 wpa_supplicant 实例是:

/usr/bin/wpa_supplicant -u

这通常由 NetworkManager 自动启动(通过 dbus-daemon)。它会忽略 conf 文件,不会创建传统的控制接口,并且只接受通过 D-Bus 进行的配置。

答案2

我找到了适合我的解决方案。几个步骤:

  1. 更改 /etc/wpa_supplicant.conf 以包含以下内容: ctrl_interface=/var/run/wpa_supplicant ctrl_interface_group=0 update_config=0 应删除 Block“network={...}”,并且update_config应将其设置为 0。

  2. NetworkManager 不管理 /etc/network/interfaces 中默认定义的任何接口(未管理的设备意味着 NetworkManager 不处理这些网络设备)。为了让 NetworkManager 管理 Wi-Fi 接口,注释掉Wireless interfaces/etc/network/interfaces

  3. 创建 /etc/NetworkManager/NetworkManager.conf,内容如下: [main] plugins=ifupdown,keyfile [ifupdown] managed=**true**

  4. 重启机器

  5. 重启后,运行NetworkManager服务

    NetworkManager

从此点开始,网络管理器可以管理 Wi-Fi 连接。

答案3

在我运行“raspi-config”并破坏了我的 wifi 设置后,此修复程序在我的 pi4 上对我有用。网络管理器无法连接。AP 可见,但正确的密码被拒绝。

相关内容