Fedora

如何在啟動時啟用 wpa_supplicant?

  • September 17, 2015

我正在嘗試在 Fedora 20 中啟動時啟用 wpa_supplicant。我創建/etc/wpa_supplicant/wpa_supplicant.conf並能夠通過執行手動連接到我的無線網路

wpa_supplicant -B -i wlan0 -Dwext -c /etc/wpa_supplicant/wpa_supplicant.conf

(我可以通過執行確認我已連接iwconfig

我是 systemd 的新手,不知道如何在啟動時發生這種情況。我找到了使用 systemd 的其他發行版的指南,上面說您需要做的就是

systemctl enable wpa_supplicant@wlan0

但是當我執行該命令時,我得到

Failed to issue method call: No such file or directory

注意:在官方 Fedora 支持論壇上交叉發布,但尚未收到任何答复。

Braiam在評論中建議,如果wpa_supplicant@wlan0不存在,我可能需要自己創建它,並且還指出我在Arch Linux wiki中描述如何創建它的頁面。我不得不為 Fedora 稍微調整一下,但以下內容對我有用:

  1. 創建一個系統單元,/etc/systemd/system/network-wireless@.service
[Unit]
Description=Wireless network connectivity (%i)
Wants=network.target
Before=network.target
BindsTo=sys-subsystem-net-devices-%i.device
After=sys-subsystem-net-devices-%i.device

[Service]
Type=oneshot
RemainAfterExit=yes

ExecStart=/usr/sbin/ip link set dev %i up
ExecStart=/usr/sbin/wpa_supplicant -B -i %i -c /etc/wpa_supplicant/wpa_supplicant.conf
#ExecStart=/usr/sbin/dhclient %i

ExecStop=/usr/sbin/ip link set dev %i down

[Install]
WantedBy=multi-user.target

請注意,我必須更改系統的ip往返wpa_supplicant路徑。我也改成,因為我沒有安裝。/usr/bin/``/usr/sbin/``dhcpcd``dhclient``dhcpcd 2. 在 中創建符號連結/etc/systemd/system/multi-user.target.wants/

ln -s /etc/systemd/system/network-wireless@.service \
 /etc/systemd/system/multi-user.target.wants/network-wireless@wlan0.service

我必須這樣做,因為跑步

systemctl enable network-wireless@wlan0.service

如 Arch Linux wiki 中所述,失敗了

Failed to issue method call: No such file or directory
  1. 啟動服務:
systemctl daemon-reload
systemctl start network-wireless@wlan0.service

現在我可以在啟動時連接到我的無線網路。我還沒有弄清楚如何正確配置 DHCP(因此dhclient在我的 systemd 單元中註釋掉了該行),但這是一個不同的問題。

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