如何在启动时获得Wi-Fi连接?


30

Raspberry Pi Model B
操作系统:Raspbian

我无头运行Pi(当前通过直接以太网连接)。我有一个USB WiFi加密狗。我想让WiFi在启动时启动并通过DHCP连接。

http://rpi.tnet.com/project/faqs/headlessportablewifi建议我实际上不需要从默认值更改/ etc / network / interfaces

auto lo

iface lo inet loopback
iface eth0 inet dhcp

allow-hotplug wlan0
iface wlan0 inet manual
wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf
iface default inet dhcp

我已经为我的网络配置了/etc/wpa_supplicant/wpa_supplicant.conf

当我启动Pi时,WiFi无法立即连接。但是,如果我使用SSH并运行sudo ifup wlan0,则Pi连接正常。

Pi在自己的启动过程中不应该这样做吗?我大概可以写一个告诉点文件来运行该命令,但是我想以正确的方式来做(并了解我的系统如何工作)。

我知道我也可以为每个要使用的WiFi网络设置一个静态IP地址:如何设置多个WiFi网络?。但是,我希望有一个简单的解决方案,我只需在/etc/wpa_supplicant/wpa_supplicant.conf上输入几行即可添加新的WiFi网络。

我在这里想念的是什么?

Answers:


24

默认的Raspbian / etc / network / interfaces配置在启动时不连接到WiFi。接口手册页的关键行是:

以单词“ auto”开头的行用于标识在使用-a选项运行ifup时要启动的物理接口。(此选项由系统启动脚本使用。)

...

以单词“ auto”开头的行用于标识在使用-a选项运行ifup时要启动的物理接口。(此选项由系统启动脚本使用。)

第一个丢失的部分是台词auto wlan0。据我所知,它可以放在文件的任何位置。

直到您尝试在未插入以太网电缆的情况下进行引导时,此方法才起作用。然后,WiFi无法在引导时连接,而必须通过运行sudo ifup wlan0或拔出并重新插入Wi-Fi加密狗手动触发。

该问题是由ifplugd守护程序引起的,该守护程序在您插入或卸下网络设备时将其打开和关闭。您可以重新配置它,也可以使用删除它sudo apt-get purge ifplugd

如果已删除ifplugd,则应将以下行添加到/ etc / network / interfaces,以便插入时以太网连接也将连接:

auto eth0
allow-hotplug eth0

我不确定这些 auto行是否严格必要,或者在没有ifplugd的情况下hotplug是否可以正确引导,但这对我有用

我的工作文件显示为:

auto lo
iface lo inet loopback

auto eth0
allow-hotplug eth0
iface eth0 inet dhcp

auto wlan0
allow-hotplug wlan0
iface wlan0 inet manual
wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf
iface default inet dhcp

2
您在“ auth eth0”处有错字吗?应该是“ auto eth0”吗?
Jordan Sitkin 2014年

2
@katriel的帖子的小修正:该服务需要被去除被称为和ifplugd,而不是ifupd
dh1tw

@ DH1TW和六个月后……我将永远不会再从记忆中写出这些东西之一
katriel 2015年

作为记录,我使用的是wpa_supplicant,所以我刚刚启用了该服务sudo systemctl enable wpa_supplicant.service
DanielArgüelles18年

0

我有同样的问题。检查的r / w设置/etc/network/interfaces

我做到了chmod 600 /etc/network/interfaces,我的问题就解决了。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.