树莓派开始,玩转Linux6:飘洋过海连接你

树莓派开始,玩转Linux6:飘洋过海连接你

我们之前使用树莓派的方法,就是给它连上显示器、键盘和鼠标,然后像使用一台普通电脑一样使用它。
但很多时候,我们把体积小巧的树莓派当作一台便携设备来使用。这时用户可不希望随身带着体积庞大的鼠标、键盘和显示器。如果能用手中的电脑直接连接树莓派,然后用该电脑的输入输出设备来操纵树莓派电脑,就可以省去很多不必要的麻烦。除此之外,树莓派在物联网情境下的应用,也离不开多样的远程连接方式。本章介绍连接树莓派的其他方式。

1.局域网SSH登录树莓派:

常见的家庭或办公网络都是以一个Wi-Fi路由器为中心的。在这种局域网场景下,可以很容易地用SSH的方式远程登录树莓派。SSH是用于远程服务器管理的加密协议。SSH分为服务器和客户端两部分。树莓派将作为服务器端,而同一局域网中的另一台电脑可以作为客户端。客户端成功登录之后,我们可以从客户端用命令行的方式来远程操作服务器端。

首先,我们需要开启树莓派上的SSH服务器。树莓派已经预装好了SSH服务器,我们只需进入树莓派的设置页面开启即可。从终端用命令行进入设置页面:

在这里插入图片描述
然后在"5 Interfacing Options"→"P2 SSH"页面中打开SSH服务器。

为了远程连接,我们必须知道树莓派的IP地址。在树莓派上,可以用ifconfig命令来找到树莓派的IP地址:

在这里插入图片描述
从ifconfig的输出中找到树莓派在局域网中的IP地址。比如ifconfig输出中给出了对应Wi-Fi连接的wlan0端口地址为192.168.1.101。这时就可以用同一局域网下的其他电脑来登录树莓派了。如果这台电脑是MacOS X或Linux系统的,则可以直接使用ssh命令:

在这里插入图片描述
输入用户pi的密码,就可以远程登录树莓派了。其实使用SSH客户端时,除了说明树莓派的IP地址,还需要一个端口号。在省略端口号时,客户端默认为端口22。

在Windows下,可以使用PuTTY这样的SSH客户端软件。先访问PuTTY官网,下载PuTTY客户端。解压后,单击文件夹中的PUTTY.EXE文件将会打开配置窗口,如图所示。输入树莓派的相关信息来远程登录,PuTTY会弹出一个Shell界面,如图所示。你可以通过这个Shell界面远程操纵树莓派。
在这里插入图片描述
在这里插入图片描述
2.Bonjour:

在上面的过程中,我们必须从树莓派本地运行ifconfig来查找它的IP地址,给远程登录增加了不必要的麻烦。我们可以用局域网扫描工具来找到树莓派的IP地址。UNIX系统下提供了arp命令行工具,通过ARP协议来找到局域网下所有设备的MAC地址和对应的IP地址。此外,在不同的平台下也有很多图形化的局域网扫描软件,例如iPhone上的Fing、Mac OS X下的LanScan、跨平台的Angry IP Scanner,都可以帮助你列出同一局域网下所有设备的MAC地址和对应的IP。此外,你还可以登录路由器的管理页面。很多路由器都会列出连接设备及其IP。当然,通过这种方式得到的IP是一个列表,还要从中筛选出目标IP。如果局域网中的设备较多,其过程会比较烦琐。

arp  -a  //扫描出周围设备IP

更方便的,树莓派提供了对Bonjour的支持。Bonjour用于自动发现网络上的设备,可以实现局域网上的自动域名解析。在同一局域网下,可以用主机名.local的形式,找到对应的IP地址。由于树莓派的默认主机名是raspberrypi,因此可以用raspberrypi.local来登录树莓派:

在这里插入图片描述
如果局域网内有多个以raspberrypi为名的主机,那么Bonjour将依次把它们称呼为:

在这里插入图片描述
为了彻底避免主机名的冲突,还可以重新命名树莓派的主机名。在raspi-config的设置页面中,选择"7 Advanced Options"→"A2Hostname"选项,更改主机名后再重新启动树莓派,就能以新的主机名来进行Bonjour寻址。

Windows系统并没有自带对Bonjour的支持,但是可以通过下载安装iTunes或"Bonjour Print Services for Windows"来获得Bonjour功能。

Bonjour给设备提供了一个动态域名,用于对应该设备的IP地址。在Mac OS X下,可以用下面的命令来查询背后的IP地址:

在这里插入图片描述
3:互联网SSH登录树莓派:

介绍了局域网和点对点情况下的SSH登录后,我们可以把野心放大一点,尝试在互联网环境中远程登录SSH,下面用几种不同的方式实现。

1.NAT端口映射
如果我们能拿到树莓派在互联网上的公网IP地址,那么就可以直接用一个命令SSH到该IP地址。
问题是,现在大部分局域网都用DHCP来给设备分配网内的私有IP,很可能只有网关才享有一个公网IP地址。有些网关允许设置基于NAT的端口映射。一组公网IP和端口号能对应唯一的私网IP和端口号。在这种情况下,我们就能从外网连接到局域网中的树莓派了,如图所示。

在这里插入图片描述
我们可以利用这一机制来找到树莓派,比如,通过设置网关,让公网的199.165.145.1:8999对应私网的10.0.0.1:22。这里的199.165.145.1是网关的公网IP。10.0.0.1是树莓派的私网IP。22是SSH协议的默认端口。这时在互联网的其他电脑上,就可以用SSH连接到局域网中的树莓派了:

在这里插入图片描述
为了用该方法,我们的网关必须允许相关的端口映射设置。而很多网关出于安全考虑,完全不向外网开放类似的端口映射。因此,这一方法看似可行,但实践中会遇到很多困难。

2.REMOT3.IT:

树莓派官网提供了一种简便的方法,即使用Weaved公司推出的REMOT3.IT。首先要在树莓派上安装相关的工具:

在这里插入图片描述
在安装过程中,REMOT3.IT会要求你输入REMOT3.IT网站的账户信息。在树莓派上安装完成后,在REMOT3.IT网站登录自己的账户,就能看到树莓派设备。如图所示,网站会提供用于在互联网上连接该树莓派所需的地址和端口号。根据地址和端口号,你就可以在任何一个能连接到互联网的电脑上,用SSH客户端访问该树莓派。这个服务很好用,但是该网站不仅限制树莓派的数目,而且限制SSH连接的时间。想要避免这些限制,就需要缴费了。

在这里插入图片描述
3.SSH反向隧道
其实,类似于REMOT3.IT的技术不难自行实现。我们可以用SSH反向隧道(Reverse Tunneling)技术,从外网远程登录树莓派。首先,让树莓派主动向公网服务器的某个端口发起SSH连接,比如vameilab.com:8999,形成一个SSH隧道。当我们使用互联网上的其他电脑,通过SSH连接到服务器的这一端口时,服务器会把通信内容接力到与树莓派的SSH隧道中,最终抵达树莓派。整个过程如图8-5所示。由于公网服务器的域名和IP地址相对固定,因此我们也不用为找不到树莓派的IP地址而头痛。
在这里插入图片描述
了解原理之后,我们也可以自行实现一个类似的中继服务器。你可以使用Amazon或阿里云的弹性云来架设中继服务器。你需要在云的控制台中开放用于反向连接的端口,如8999。从树莓派上用SSH命令建立反向隧道:
在这里插入图片描述
上面的命令,从树莓派的22端口到vameilab.com的8999端口建立反向隧道。登录时用的vamei是中继服务器上的一个账户。反向隧道建立之后,就可以从互联网上直接登录树莓派了:

在这里插入图片描述
4.文件传输:

此前,我们在树莓派上建立了一个SSH服务器,然后通过这个服务器提供的远程Shell来控制树莓派。当需要在本地电脑和树莓派之间传输文件时,我们同样可以利用树莓派上的SSH服务器进行。

1.sftp命令
如果本地电脑是Linux或Mac OS X系统,那么可以使用sftp命令工具来传输文件。首先,在终端下用sftp命令登录树莓派,其登录方式与SSH登录类似:

在这里插入图片描述
输入密码后,sftp会提供一个Shell。你可以用下面的命令来查看树莓派当前目录下的文件:

在这里插入图片描述
还可以查看本地电脑当前目录下的文件:
在这里插入图片描述
查看树莓派的当前目录:
在这里插入图片描述
更改树莓派上的目录。new_folder是当前目录下的一个子目录:
在这里插入图片描述
返回上级目录使用:

在这里插入图片描述
查看本地电脑的当前目录:

在这里插入图片描述
更改本地电脑的目录。new_folder是当前目录下的一个子目录:

在这里插入图片描述
返回上级目录使用:
在这里插入图片描述
从树莓派上下载文件:

在这里插入图片描述
文件remote.file是树莓派当前目录下的一个文件,它将被下载到本地电脑的当前目录下。

把本地电脑的文件上传到树莓派上:
在这里插入图片描述
文件local.file是本地电脑当前目录下的一个文件,它将被上传到树莓派的当前目录上。

退出sftp:
在这里插入图片描述
2.scp命令
在Linux和Mac OS X下,不仅可以用sftp命令传输文件,还可以用scp命令来传输文件。该命令同样基于SSH,所以树莓派上的SSH服务器要先设置好。这个命令可以在一行命令中完成复杂的功能,避免了手动的Shell操作。我们来看一个文件的上传:

在这里插入图片描述
这行命令把本地电脑当前目录下的local.file上传到远程电脑的/home/vamei/目录。可以看到,scp后面跟着两个参数,分别说明了文件的起始位置和目标位置。在scp中,可以用"用户名@主机:路径"的方式,来指定文件或目录。如果位置在本机上,那么可以省去用户名和主机,只用路径就可以了。

类似的,下载文件:
在这里插入图片描述
这行命令不但会把树莓派的remote.file下载到本地电脑的当前目录中,还会把文件重新命名为local.file。因此,目标位置不仅可以是一个目录,还可以是一个新的文件名。

在scp命令中增加-r选项,可以下载整个目录:
在这里插入图片描述
树莓派上的/home/vamei目录会下载到本地电脑的当前目录。命令scp还会遍历/home/vamei下的所有内容,并一一下载下来。上传整个目录的过程与此类似。

3.图形化工具
除了使用命令行来操作树莓派上的文件,我们也可以使用更直观的图形化工具。FileZilla是一款跨平台的FTP/SFTP文件管理工具。从FileZilla的官网下载该软件,FileZilla的软件界面如图8-6所示。它可以用图形化的方式显示出本地电脑和远程树莓派的文件。你可以通过拖曳的方式在两者之间传文件。单击左上角的服务器图形的按钮可以进入站点编辑器。要想访问树莓派上的文件,我们可以在站点管理器中选择"New Site"选项新建一个站点,填入树莓派的主机名或IP地址,选择SFTP作为"Protocol"。在登录信息中选择Normal作为"Logon Type",并输入树莓派的登录用户名和
密码,如图所示。(类似winSCP)
在这里插入图片描述
在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 好的,树莓派开始玩转Linux PDF 是一本介绍如何在树莓派上使用Linux操作系统的电子书。它包含了从安装Linux到使用命令行和图形界面进行操作的详细指南,还介绍了如何使用树莓派进行编程和网络连接等方面的内容。这本书对于想要深入了解树莓派Linux的人来说是非常有用的。 ### 回答2: 树莓派是一款小型的单板计算机,拥有良好的扩展性和低功耗特性,因此备受开发者和爱好者的喜爱。而Linux作为开源操作系统,已经成为开发者们最重要的操作系统之一。 树莓派的硬件特性使得它非常适合运行Linux操作系统。而且,官方提供的Raspbian等系统均是基于Linux的,因此我们可以轻松地将树莓派Linux系统进行结合。 《树莓派开始玩转Linux》是一本面向初学者的指南,其框架比较清晰,从基础的Linux命令开始介绍,然后逐渐深入到网络配置、安全设置等方面。通过阅读本书,我们可以学习到如何将树莓派Linux结合起来,还能够掌握Linux的基础操作。 具体来讲,本书讲解了如何安装和配置树莓派,包括如何选择和下载Linux操作系统,如何安装和配置SSH(Secure Shell)、VNC(Virtual Network Computing)等,使用户可以通过远程控制来管理设备。同时,本书还涉及了Linux系统的基础操作,包括文件和目录操作、文本编辑、用户和权限管理等等。 总之,学习《树莓派开始玩转Linux》会让我们对树莓派Linux系统有更深入的了解,能够更好的利用树莓派进行开发和应用,也将极大地提升我们的技能和竞争力。 ### 回答3: 树莓派开始玩转Linux PDF是一本比较值得推荐的书籍,它适合初学者学习树莓派Linux系统。树莓派作为一种新型的单板计算机,在硬件性能和软件应用方面有着许多亮点,它可以用来实现很多最初想象不到的应用。 在这本书中,作者详细介绍了在树莓派上使用Linux系统的方法和相关技巧,主要包括系统安装、文件系统、网络设置、硬件接口、Python编程等方面。书中的内容既涉及到树莓派硬件的使用,也关注到了Linux系统的全面运用,这也充分体现了树莓派的多功能性和灵活性。 该书对于初学者学习树莓派Linux系统的方法非常友好,它不仅提供了基本知识的讲解,而且还有很多例程和实践,这样可以帮助初学者快速入手和上手。特别是对于以前没有接触过树莓派Linux系统的读者,该书对于他们理解树莓派Linux系统的应用具有很好的借鉴价值。 总之,树莓派开始玩转Linux PDF是一本好书,它的出现可以方便初学者对树莓派Linux系统的理解和使用,同时可以丰富各行各业对于树莓派的应用和推广,这也有助于树莓派在未来的应用市场上得到更加广泛地应用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值