Linux

對 wpa_supplicant 的後續呼叫失敗 - 無法連接到 wifi

  • October 8, 2017

我有一個 ubuntu 15.10 伺服器,它利用 wpa_supplicant 連接到使用 wpa_passphrase 創建的無線網路配置文件。在重新啟動時,我第一次呼叫sudo wpa_supplicant -B -i wlp2s0 -c ./MVS(其中 MVS 是為網路保存的配置文件的名稱)我得到輸出

Successfully initialized wpa_supplicant
Could not read interface p2p-dev-wlp2s0 flags: No such device

但退出程式碼為零,我可以通過執行確認我實際上已連接到無線網路sudo iw wlp2s0 link

但是,隨後對 wpa_supplicant 的呼叫(對於其他配置文件甚至相同的配置文件)會產生更詳細的輸出:

Successfully initialized wpa_supplicant
Could not read interface p2p-dev-wlp2s0 flags: No such device
nl80211: Could not set interface 'p2p-dev-wlp2s0' UP
nl80211: deinit ifname=p2p-dev-wlp2s0 disabled_11b_rates=0
p2p-dev-wlp2s0: Failed to initialize driver interface
P2P: Failed to enable P2P Device interface

wpa_supplicant 仍然返回退出程式碼為零,但無線設備這次肯定沒有連接到任何網路。任何建議或想法將不勝感激,我不知道如何調試或修復它。

我很尷尬地說解決方案是殺死已經執行的 wpa_supplicant 程序。-B 參數使程序分叉到後台,並且只要它已經在執行,再次嘗試執行它就會失敗。我仍然不確定為什麼它會列印第一條錯誤消息,但它可以毫無問題地連接到無線網路。

sudo killall wpa_supplicant

引用自:https://unix.stackexchange.com/questions/281744