# 场景
刚拿到手树莓派4B板子,通过配置文件来使用连接wifi
Board version:4B
System:ubuntu-18.04.4-server-arm64(未安装Desktop)
# 解决方案
1. iwconfig确认网卡wlan0在线
wlan0 IEEE 802.11bgn ESSID:"ASUS" Mode:Managed Frequency:2.412 GHz Access Point: 8C:AB:8E:FA:41:C8 Bit Rate=72.2 Mb/s Tx-Power=31 dBm Retry short limit:7 RTS thr:off Fragment thr:off Power Management:on Link Quality=70/70 Signal level=-26 dBm Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0 Tx excessive retries:1 Invalid misc:0 Missed beacon:0 lo no wireless extensions. eth0 no wireless extensions.
2. 配置文件
$ sudo vim /etc/wpa_supplicant/wpa_supplicant.conf
写入wifi连接信息
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev update_config = 1 country=GB network={ ssid="[wifi-name]" scan_ssid:1 psk="[password]" priority=2 } network={ ssid="[wifiname]" psk="[password]" priority=1 }
- ctrl_interface:这个文件夹里面存的是一个当前使用的interface的socket文件,可以供其他程序使用读取WiFi状态信息
- network:是一个连接一个WiFi网络的配置,可以有多个,wpa_supplicant会按照priority指定的优先级(数字越大越先连接)来连接,当然,在这个列表里面隐藏WiFi不受priority的影响,隐藏WiFi总是在可见WiFi不能连接时才开始连接。
- ssid:网络的ssid
- psk:密码
- priority:连接优先级,越大越优先
- scan_ssid:连接隐藏WiFi时需要指定该值为1
3. 重启加载配置
$ sudo systemctl restart networking #重启网卡 $ sudo ifdown wlan0 $ sudo ifup wlan0 $ wpa_cli status #查看连接状态