fedora 中使用wpa_cli,会出现以下错误:
$ wpa_cli
wpa_cli v2.0
Copyright (c) 2004-2012, Jouni Malinen <j@w1.fi> and contributors
This software may be distributed under the terms of the BSD license.
See README for more details.
Interactive mode
Could not connect to wpa_supplicant: (null) - re-trying
原因基本上有两种可能:
1: 不是用root权限运行
2:没有/var/run/wpa_supplicant的控制接口
解决方法是:
在/usr/lib/systemd/system/wpa_supplicant.service中,添加:-O /var/run/wpa_supplicant
这样,在启动wpa_supplicant的时候,就会后/var/run/wpa_supplicant控制接口了。
[Unit]
Description=WPA Supplicant daemon
Before=network.target
After=syslog.target
[Service]
Type=dbus
BusName=fi.w1.wpa_supplicant1
EnvironmentFile=-/etc/sysconfig/wpa_supplicant
ExecStart=/usr/sbin/wpa_supplicant -u -f /var/log/wpa_supplicant.log -c /etc/wpa_supplicant/wpa_supplicant.conf -O /var/run/wpa_supplicant $INTERFACES $DRIVERS $OTHER_ARGS
[Install]
WantedBy=multi-user.target
测试:
sudo killall wpa_supplicant
ps aux | grep wpa_supplicant
root 3140 0.0 0.1 50748 2836 ? Ss 00:17 0:00 /usr/sbin/wpa_supplicant -u -f /var/log/wpa_supplicant.log -c /etc/wpa_supplicant/wpa_supplicant.conf -O /var/run/wpa_supplicant -u -f /var/log/wpa_supplicant.log -P /var/run/wpa_supplicant.pid
sudo ls -al /var/run/wpa_supplicant/
total 0
drwxr-x---. 2 root root 60 Aug 21 00:17 .
drwxr-xr-x. 39 root root 1220 Aug 21 00:19 ..
srwxrwx---. 1 root root 0 Aug 21 00:17 wlp3s0