当你的图形界面炸了,不错.确实炸了。所以在一切安好的情况下,做好最坏的打算,所以。就有了,修改配置文件,接家里的无线网络,
0x01 工具
Raspberry Pi 2+ ,一个USB网卡,
0x02 配置:
iwconfig
PS:这个是已经连接过的界面,你的未连接的大概也和这个差不多。
一般来说,无线接口都叫做 wlan0。当然也有例外的,但在这篇教程中我们将会一直用通用叫法。
以防万一,你得确认下以使此接口服务是启动着的
sudo ip link set wlan0 up
一但确认了无线接口是工作着的,你就可以用如下命令来扫描附近的无线网络了:
sudo iw dev wlan0 scan | less
这个是VM编辑器,里面显示了,扫描到的SSID。Channel,加密方式等其他信息,退出这个VM的话。按一下ESC。在按一下q,按一下回车就可以了,
如果您想连接的网络是没有加密的,您可以用下面的命令直接连接:
PS:方括号都需要去掉!
sudo iw dev wlan0 connect [网络 SSID]
如果网络是用 WEP 加密的,也非常容易:
sudo iw dev wlan0 connect [网络 SSID] key 0:[WEP 密钥]
但网络使用的是 WPA 或 WPA2 协议的话,这种情况,您就得使用叫做 wpa_supplicant 的工具,
需要修改 wpa_supplicant.conf 文件,
sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
照着下面的样子添加(请不要删除原先就已经存在的任何行):
# 最常用的配置。WPA-PSK 加密方式。
network={
ssid="WiFi-name1"
psk="WiFi-password1"
priority=5
}
network={
ssid="WiFi-name2"
psk="WiFi-password2"
priority=4
}
priority
是指连接优先级,数字越大优先级越高(不可以是负数)。
按照自己的实际情况,修改这个文件。
例如,你家中有3个WiFi,分别为WiFi-A、WiFi-B和WiFi-C。你希望树莓派的连接优先级为 WiFi-A>WiFi-B>WiFi-C,则整个配置文件看起来像这样:
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
network={
ssid="WiFi-A"
psk="12345678"
priority=5
}
network={
ssid="WiFi-B"
psk="12345678"
priority=4
}
network={
ssid="WiFi-C"
psk="12345678"
priority=3
}
配置文件修改完成后,在后台启动此命令:
sudo wpa_supplicant -i wlan0 -c /etc/wpa_supplicant/wpa_supplicant.conf
最后,无论是连到开放的网络还是加密的安全网络,您都得获取 IP 地址。简单地使用如下命令:
sudo dhcpcd wlan0
如果一切顺利的话,您应该已经通过 DHCP 获取到了一个全新的本地 IP,这个过程是在后台自动完成的。如果想确认下是否真正连接上的话,您可以再一次输入如下命令检查:
iwconfig