本文介绍了Linux系统启动后,在Linux的命令行中使用wpa_supplicant以及wpa_passphrase工具连接到指定路由器的方法。以及使用过程中的调试过程。
USB WiFi:RTL8188EUS
OS:2019-9-26 full
硬件平台:CM3+
参考:
https://www.raspberrypi.org/documentation/configuration/wireless/wireless-cli.md
将/etc/wpa_supplicant/wpa_supplicant.conf的文件备份,使用touch命令新建一个文件/etc/wpa_supplicant/wpa_supplicant.conf。
sudo su进入root用户,然后执行:
wpa_passphrase "testing" >> /etc/wpa_supplicant/wpa_supplicant.conf
也可以采用参考文档中的第二种方法:
wpa_passphrase "testing" | sudo tee -a /etc/wpa_supplicant/wpa_supplicant.conf > /dev/null
在执行wpa_cli -i wlan0 reconfigure
出现错误:
Failed to connect to non-global ctrl_ifname: wlan0 error: No such file or directory
使用sudo killall wpa_supplicant杀死所有的wpa_supplicant进程。
在后台执行wpa_supplicant的程序,然后再开另外一个窗口,执行wpa_cli -i wlan0 reconfigure同样会有上面的错误。
使用:sudo wpa_supplicant -B -c /etc/wpa_supplicant/wpa_supplicant.conf -i wlan0出输出如下错误信息:
wlan0:failed to initialize driver interface
继续参考:
https://wiki.archlinux.org/index.php/WPA_supplicant_(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87)#wpa_cli_%E6%93%8D%E4%BD%9C%E8%84%9A%E6%9C%AC
执行:
sudo wpa_supplicant -B -c /etc/wpa_supplicant/wpa_supplicant.conf -i wlan0 -Dwext
iwconfig发现已经连接上路由器,此时并没有采用sudo dhcpcd wlan0的方式获取IP地址的操作,ifconfig发现已经获得IP地址。
ping www.sougou.com可以ping通。