如何从raspberry pi 2(snappy)连接wifi网络

我已经设置了新的覆盆子pi 2与snappy核心。 我找不到如何从snappy终端连接wifi网络。

我的wifi加密狗工作正常,但在snappy核心没有iwconfig。 Wlist也没找到。 有人可以帮帮我吗?

提前致谢。

所以我刚收到邮件中的Raspberry Pi 3 Model B,并以推荐的方式安装了Ubuntu Snappy Core 16。 我通过HDMI和USB键盘,以太网和DHCP执行初始设置。 然后我通过以太网创建了我的ssh连接并断开了显示器和键盘的连接。 从那里,我想将我的设备连接到WiFi并偶然发现这篇文章。

我喜欢在没有额外安装或解决方法的情况下尝试,所以我按照上面的建议咨询了安装提示 ,并且看到WPA_Supplicant应该预先安装。 由于很少干预并且比提示建议的努力少,我发现你可以通过简单地将由四行组成的配置文件添加到由wpa_supplicant搜索的默认位置来配置wifi,而不是其他任何东西。 虽然不久之前有人问过一个Raspberry Pi 2,我从最近的评论中看到它可能仍然是相关的,而且它很简单,我倾向于分享。

我知道这个答案看起来很长,但它的图片非常简单和详细。 任何具有终端基本知识且能够最初设置树莓派的人都能够遵循它。

TL;博士

  • 设置Rasberry Pi并通过SSH建立LAN连接
  • sudo shutdown -P nowsudo shutdown -P now关闭你的Raspberry Pi
  • 将SD卡插入Linux发行版
  • 在文本编辑器中,将名为“wpa_supplicant.conf”的配置文件添加到SD卡的可写分区上的/ writable / system-data / etc /文件夹中
  • 我通过在桌面上创建conf文件然后使用sudo cp将其移动到正确的目录来完成此操作
  • 配置文件应该是:
    network={
    ssid="Typhon Secure" 使用您的网络SSID
    psk="*******" 使用您的网络密钥
    }
  • 注意:这也适用于隐藏网络
  • 弹出你的SD,将它插入你的Pi,启动你的Pi; 它应该连接到您的WiFi

我的教程从通过以太网进行ssh连接开始,这可以通过遵循Ubuntu Core入门Raspberry Pi 2/3中的说明来实现。

通过SSH连接

然后键入wpa_supplicant ,您将看到它不需要安装,因为它是预先构建到Snappy Core中的。 正如您将在下面的图像中看到的那样,运行wpa_supplicant会返回很多选项,但请注意最后一行:

 wpa_supplicant -Dnl80211 -iwlan0 -c/etc/wpa_supplicant.conf 

这告诉你的是首先是Driver,然后是Interface,然后是它正在寻找接口文件的位置: -c/etc/wpa_supplicant.conf

的wpa_supplicant WPA_Supplicant续

既然我知道配置文件需要在哪里,我现在关闭带有sudo shutdown -P now的Raspberry Pi,一旦它关闭; 断开电源并将SD插入带有Fedora的Linux机箱中。 不知何故,文件系统显示不同,所以你会发现wpa_supplicant.conf需要位于的位置是在writable/system-data/etc ,而SD卡安装在/ run / media / cregger /中,所以你会看我的文件路径是/run/media/cregger/writable/system-data/etc/

纳米位置

我用nano创建了一个名为“wpa_supplicant.conf”的新文件,其中包含以下四行:

network={ ssid="Typhon Secure" (我的网络SSID) psk="*******" (显然星号代表我的WiFi密钥) }不要忘记终止。

请注意,这适用于没有额外配置的隐藏网络。 我的网络有一个隐藏的SSID,我什么都没改变。 它具有WPA-PSK 2安全性; 非常标准的票价。 配置示例

您会注意到我将其保存到桌面。 然后我将它复制到终端的正确位置,因为它由root拥有。

复制到SD卡

然后从Linux中弹出SD卡,将其重新插入Raspberry Pi,将电源插回Raspberry Pi; 让它启动,它会寻求你的无线网络。

在我看来,你会看到Eth和Wlan都采用了IP Eth0和Wlan0

我现在可以通过LAN或WL​​AN进行ssh

双重连接

我知道这很长,但是我希望它能帮助你避免破坏你的FS并安装一堆不必要的应用程序。

来自http://www.marinus.nu/2015/02/enabling-wifi-on-snappy-ubuntu-core.html

你可以安装必要的wifi工具的dpkg

首先从另一台计算机安装一些工具

 wget http://ports.ubuntu.com/pool/main/w/wpasupplicant/wpasupplicant_0.7.3-6ubuntu2.3_armhf.deb \ http://ports.ubuntu.com/pool/main/libn/libnl3/libnl-3-200_3.2.24-2_armhf.deb \ http://ports.ubuntu.com/pool/main/libn/libnl3/libnl-genl-3-200_3.2.24-2_armhf.deb \ http://ports.ubuntu.com/pool/main/p/pcsc-lite/libpcsclite1_1.8.11-3ubuntu1_armhf.deb \ 

我把它放在闪存驱动器上,然后移动它

 #Mount External Hard Drive mount -t vfat /dev/sda1 /media/external -o uid=1000,gid=1000,utf8,dmask=027,fmask=137 

然后我导航到/ media / external并运行命令

 sudo mount -o remount,rw / sudo dpkg -i *.deb 

然后将此文件添加到/etc/network/interfaces.d/wlan0

 allow-hotplug wlan0 iface wlan0 inet dhcp wpa_ssid "" wpa_psk "" 

然后我重新启动效果发生

 sudo reboot 

额外奖励:为了工作敏捷,请记住设定日期

 sudo date --set 03 Mar 2015 20:55:00 

至于我,我将树莓连接到以太网,所以我不需要单独下载deb文件。

此外,官方指南(@AnthonyWong声称在这里: http : //developer.ubuntu.com/en/snappy/start/installation-tips )对我不起作用,因为它有一些基本的东西缺失( allow-hotplug line)。 此外,最好将所有配置集中在一个文件中(而不是两个,因为本指南鼓励,甚至告诉您将其放置在一些随机/ home / ubuntu位置……)。

所以,我制作了这个应该为你设置一切的小脚本:

 #!/usr/bin/env bash sudo apt -y install wpasupplicant echo "allow-hotplug wlan0" > wlan0.cfg.tmp echo "iface wlan0 inet dhcp" >> wlan0.cfg.tmp echo ' wpa_ssid "YOUR_WIFI_SSID"' >> wlan0.cfg.tmp echo ' wpa_psk "YOUR_WIFI_PASSWORD"' >> wlan0.cfg.tmp echo "" >> wlan0.cfg.tmp sudo mv wlan0.cfg.tmp /etc/network/interfaces.d/wlan0.cfg 

之后, 断开以太网电缆 ,重启机器(例如通过sudo reboot ),你就是花花公子。

注意:如果您更喜欢静态IP而不是依赖DHCP(例如用于端口映射……):

 #!/usr/bin/env bash sudo apt -y install wpasupplicant echo "allow-hotplug wlan0" > wlan0.cfg.tmp echo "iface wlan0 inet static" >> wlan0.cfg.tmp echo ' address 192.168.1.151' >> wlan0.cfg.tmp echo ' netmask 255.255.255.0' >> wlan0.cfg.tmp echo ' gateway 192.168.1.100' >> wlan0.cfg.tmp #because my router is rubbish and doesn't provide DNS service echo ' dns-nameservers 8.8.8.8' >> wlan0.cfg.tmp echo ' wpa_ssid "YOUR_WIFI_SSID"' >> wlan0.cfg.tmp echo ' wpa_psk "YOUR_WIFI_PASSWORD"' >> wlan0.cfg.tmp echo "" >> wlan0.cfg.tmp sudo mv wlan0.cfg.tmp /etc/network/interfaces.d/wlan0.cfg