写在前面的话


树莓派是一台电脑,既然是电脑,连接显示器和键鼠是最方便不过的方法了。但是呢,有些项目确实不需要显示器,仔细想想,无人机带着显示器飞行的画面实在是很怪,况且有些时候,是条件限制,没办法连接显示器。

是不是没有显示器我们就不能愉快的玩Pi了呢?---当然不是啦

所以没有显示器的时候我们可以通过SSH的方法来玩树莓派。

那么,啥是SSH?简单来说就是一种远程登录的协议,让我们可以在局域网内另外一台电脑上去操作树莓派。(虽然说外网访问也是可以做到的,但属于超纲内容,以后我专门出文章说明,此处挖坑)

那我们就开始吧,看看有哪些方法。


首先我们要开启SSH


传说很久很久以前Raspbian默认是开启SSH的,但在一次更新之后,官方说出于安全考虑,于是将Raspbian的SSH设置成了默认关闭状态。

但要开启Raspbian OS的SSH,其实方法简单到不能再简单了,没有显示器,我们只能放弃NOOBS转而使用烧录系统的方法,那么,在烧录完成后,在Boot的根目录新建一个名为SSH的无扩展名的空文件(文件夹可不行哦)即可。

Windows用户只需要空白处点击右键,新建文本文件,更名为SSH然后删除.txt就OK啦。

Mac用户的话有一点值得注意,有时文件删除了扩展名,但是不为人知的原因还是TXT,如下图所示



所以,推荐一个简单的方法创建无扩展名的空文件

打开“文本编辑”这个自带软件,左边选中你的boot文件夹,然后点击新建文稿

直接按Command+S

把未命名改为SSH,直接点击储存,即可得到无扩展名的空文件并放入指定位置

之后推出TF卡,放入树莓派,就可以上电啦


通过网线直连路由器来实现SSH


用网线把树莓派和路由器连接起来,然后上电,接着...把Pi丢在墙角吃灰好了(笑)

Mac用户可以使用终端,终端自带SSH,非常方便

Windows用户则推荐使用PuTTY

下载地址及使用方法:

http://shumeipai.nxez.com/2013/09/07/using-putty-to-log-in-to-the-raspberry-pie.html

P.S. 手头没有Windows系统,但我看了下,说的挺详细了

若不知道IP地址,可以使用下面的命令连接(推荐,简单方便)

ssh pi@raspberrypi.local

这个命令的含义是:使用SSH方式连接 用pi账户登录 设备hostname为raspberrypi 在本局域网中

也可以通过路由器(如果是智能路由器,例如小米路由器,用手机app就可以查看,也算是超级方便)查看树莓派的IP地址之后就可以用下面命令

ssh pi@X.X.X.X

嘛,这条命令的含义和上面一个差不多,只是略有变化:使用SSH方式连接 用pi账户登录 目标设备IP地址

第一次连接会出现验证,输入yes后按回车就好

之后会提示输入密码

咱们的默认账户是:pi

pi账户的默认密码是:raspberry

输入密码时没有任何反应,并不是你电脑或者键盘坏了,只是Linux为了安全性,在输入密码时什么都不显示罢了(想当初,我不知道这件事的时候,差点把键盘摔了,因为我用的很便宜的键盘。啊哈哈哈)

之后看见绿色的命令行就成功连接树莓派了

连接之后,你就可以设置Wi-Fi啦,毕竟总是插着网线也不方便嘛。

可以使用下列命令设置Wi-Fi

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

sudo的意思是暂时使用root权限执行命令

nano是一个文本编辑器的名字,很多Linux的发行版都自带有

后面是wpa_supplicant.conf的文件路径,这里面保存有Wi-Fi的一些设置

在打开的文本编辑器中按照下列格式输入

network={

ssid=”将我替换成Wi-Fi名” psk=”将我替换成Wi-Fi密码”

priority=将我替换成数字,数字越大代表优先级越高

}

例如我有两个Wi-Fi,Wi-Fi_A优先级高于Wi-Fi_B,那么如下编写即可

network={

ssid=”Wi-Fi_A”

psk=”12345678”priority=5

}

network={

ssid=”Wi-Fi_B”

psk=”12345678” priority=4

}

按Ctrl+O之后回车保存,按Ctrl+X退出nano编辑器。

⚠️P.S. 即使你是用的是Mac进行的SSH,这里依然是使用Ctrl而不是Command

⚠️P.S.2 priority后面不可以是负数

接着输入

sudo reboot

重启树莓派,之后你就可以拔掉网线使用Wi-Fi连接了,SSH方式依旧同上面一致。

追加:有路由器,但是没有网线的时候,可以直接配置Wi-Fi连接。

和开启SSH的方法一样,建立名为wpa_supplicant.conf的文件,里面内容如下编写


country=GB

ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev

update_config=1

network={

  ssid="将我替换成Wi-Fi名"

  psk="将我替换成Wi-Fi密码"

  priority=将我替换成数字,数字越大代表优先级越高

}

保存后和SSH文件一样,放入boot文件夹,之后给树莓派上电,稍等几分钟,就会连上Wi-Fi了。


通过网线直接连接笔记本来实现SSH


总有些时候是没有路由器的,比如外出住在酒店,公共Wi-Fi很可能找不到设备,也不安全。这时候就可以通过网线把树莓派和笔记本直接连接起来

下面还是已Mac OS为例

首先给树莓派烧录好系统,创建SSH无扩展名空文件,然后用网线把树莓派和Mac连接起来(我知道Mac没有网线接口,但或许恰好你有转接线又或者恰好是黑苹果用户呢。。。啊哈哈哈,苦笑)

然后打开系统偏好设置

进入共享

选择互联网共享,选择共享来源以及共享方式后,勾选互联网共享,选择启动就好

然后打开偏好设置中的网络,树莓派是否连接可以在这里查看

等待连接(左)已连接(右)

确认连接之后就可以打开终端,使用下面命令连接即可

ssh pi@raspberrypi.local

P.S. 网络中的IP地址并不是树莓派被分配的IP地址,如果想要知道具体IP地址,可以在终端中输入

arp -a

查看,显示为bridge的就是树莓派的IP地址

P.S.2 你也可以在连接树莓派之后,在树莓派中使用

hostname -I

来查看IP地址

知道IP地址后也可以用这个命令来连

ssh pi@X.X.X.X

之后就可以正常的开启你的项目啦。祝你玩的愉快。

如果你没有显示器,没有路由器,也没有条件直连笔记本

嗯,真正的绝望不是么。

如果你知道该怎么办,请联系我,我也需要不断的学习

尾巴

这是这个系列的第二篇文章,我知道我填坑的速度有些慢,没办法,毕竟时间都是挤出来的,我本职工作也不是程序员,学校学的专业和计算机也毫无关系,只是最近爱上折腾这些小玩意儿,觉得十分有趣罢了。

一些人的评论我看了,说的其实有道理。网络上关于树莓派的教程确实千千万,写的比我好,速度比我快,深度和广度在我之上的太多了。那我为什么还要写这个系列呢?

原因很单纯,我觉得好玩,有意思,肯定有和我一样的,不是班科出生的人开坑来玩,但苦于一些小问题,最终让树莓派吃灰了。我自己是从什么都不懂走过来的,我知道一些非常简单的问题在新手眼中非常复杂,甚至不知道如何解决。

这个系列之所以叫明明白白玩Pi,就是希望把被一个步骤都讲清楚,说明白,而不是简单的复制代码,粘贴代码。如果看完我的文章,你觉得这什么都没说嘛,那我只能表示很抱歉,你所知道的一定比我多,对于不能帮到你我感到很抱歉。

最后说说这个系列的规划,其实有几篇文章已经零零散散写的差不多了,而且是具体的项目,只是没有时间做润色和最终确认,所以暂时还不能发出来。下一篇文章应该仍然是关于一些基础知识的梳理。

最后,对于我填坑速度慢,深表歉意,感谢你的支持。(鞠躬)