前言
- 本文将介绍如何连接到 BeagleBone Black 的命令行终端,而连接的方式有多种。在命令行中,你可以创建和执行命令、管理系统以及获取板子信息等操作。在通常情况下,我们使用 Ethernet 接口连接就可以,但如果出现了网络连接不可用的情况,我们就需要使用一些其他方法了。
一、通过 USB 连接和 Web 访问
标准的 BeagleBone Black 发行版对通过 USB 连接互联网方式提供了支持,以便使用 Linux USB 以太网 / RNDIS Gadget 设备。对于新用户和具有复杂网络设备的用户来说,这可能是启动 BeagleBone Black 最好的方式。
默认情况下,通过 USB 连接互联网, BeagleBone Black 具有固定的 IP 地址 192.168.7.2,并且
计算机也有固定的 IP 地址 192.168.7.1。
-
在 BeagleBone 的板载存储中其实已经存放了文档和驱动,它们可以帮助你更容易地连接 BeagleBone。使用 USB 连接 BeagleBone 主要分为如下的几个步骤:
-
(1)通过 USBA 到 Mini USB 将 BeagleBone 连接到你的电脑;
-
(2)大约 20 秒后,一个可移动存储设备会出现在你的磁盘列表中,如下图所示。
- 设备中内容包含开始使用 BeagleBone Black 的所有文件,包括驱动和文档,如下图所示:
- 设备中内容包含开始使用 BeagleBone Black 的所有文件,包括驱动和文档,如下图所示:
-
(3)打开这个设备,并且双击其中的 START.htm 在你的默认浏览器中打开 如下图所示。
-
(4)在当前本地网页中无法对 BeagleBone Black 进行自动检测,需要通过 “Start”->“Getting Started” 或直接输入网址 https://beagleboard.org/getting-started 进入正式网页页面,如下图:
-
(5)这个页面会带你一步一步地开始使用 BeagleBone Black,页面左侧导航栏显示了相应的步骤并且通过绿色表示已经完成的步骤。
-
步骤0:更新系统镜像,该步骤不是必须的,更新系统镜像为最新版本可以使得后续操作更加顺利,可以通过网站https://beagleboard.org/latest-images获取最新镜像,具体操作参见后文“五、更新系统镜像”;
-
步骤1:上电并启动,通过 USB 接口既可以为 BeagleBone Black 提供供电,又可以进行连接通信;
-
步骤2:启用网络连接
- 如果通过 USB 连接,则网络适配器应显示在计算机上。你的 Beagle会运行 DHCP 服务器,它将为您的计算机提供 192.168.7.1 或 192.168.6.1 的 IP 地址,具体取决于计算机操作系统支持的 USB 网络适配器的类型。您的 Beagle 会为其保留 192.168.7.2 或 192.168.6.2。
- 如果您的 Beagle 通过以太网或 WiFi 连接到局域网(LAN),它将使用 mDNS 将其自身广播到您的计算机。如果您的计算机支持 mDNS,则会将 Beagle 视为 beaglebone.local。同一网络上的多个 BeagleBone 板将添加后缀,例如 beaglebone-2.local。
- 下表总结了典型地址,应动态更新以指示活动连接。
-
IP 地址 | 连接类型 | 操作系统 |
---|---|---|
192.168.7.2 | USB | Windows |
192.168.6.2 | USB | Mac OS X,Linux |
192.168.8.1 | WiFi | all |
beaglebone.local | USB | mDNS enabled |
beaglebone.local | USB | mDNS enabled |
- 步骤3:浏览你的 Beagle
- 使用 Chrome 或者 Firefox 浏览器(IE 浏览器不能正确访问),浏览板上运行的 Web 服务器,它将加载导航页面,向您展示板子的功能。
- 在浏览器中输入http://beaglebone.local/ 或者 http://192.168.7.2/ 以访问你的 BeagleBone,进入以下界面,这个页面包含了关于板子的大量信息,其中还有些使用 Bonescript 的交互式示例
- 在页面上方显示了 “Your board is connected!” ,表明电脑已经成功连接至狗板。
- 较旧的软件镜像要求您安装 BEAGLE_BONE 驱动器以启动网络。 使用最新的软件映像,就不再需要该步骤。
二、通过 USB 使用 SSH 连接
-
对于网络设备间的安全加密通信,Secure Shell (SSH) 是一个非常有用的网络协议。你可以使用一个 SSH 客户终端连接到在 BeagleBone Black 的 22 端口运行的 SSH 服务器,进行下面的操作。
- 远程登录 BeagleBone Black 并且执行命令。
- 使用 SSH 文件传输协议(SSH File Transfer Protocol, SFTP) 向/从 BeagleBone Black 传
输文件。 - 正向 X11连接,允许你执行虚拟网络计算。
-
这种连接方式仍然只需要将 BeagleBone Black 和电脑使用 USB 线连接起来即可,接着在电脑端执行以下步骤:
-
(1)打开终端并连接到 BeagleBone;
- 如果使用的是 Windows 操作系统,那么需要安装 PuTTY 或者 这类远程登录客户端软件,之后在“Host Name”中输入 192.168.7.2,确保“Connection type”为 SSH 后,单击 Open 按钮,如下图所示。
- 如果使用的是 Windows 操作系统,那么需要安装 PuTTY 或者 这类远程登录客户端软件,之后在“Host Name”中输入 192.168.7.2,确保“Connection type”为 SSH 后,单击 Open 按钮,如下图所示。
-
(2)如果是第一次连接以 SSH 方式连接,则会提示你连接到未知的主机,你可以安全的忽略这个消息;
- 这里提示说这个主机的安全密钥在本地并没有缓存,需要确认接下来的操作。
- 如果你信任这个主机,那么就可以单击
Accept
按钮来将密钥添加到缓存。之后连接这个主机的时候,就不会再出现这个提示; - 如果你只想使用一次而不将秘钥加入缓存,则单击
Connect Once
按钮; - 如果你不信任这个主机,则单击
Cancel
按钮取消本次连接; - 如果需要相关的帮助,则单击
More info...
按钮。
-
(3)默认情况下 Debian 系统的登录用户为
debian
,默认密码为temppwd
,输入密码不会显示,直接回车即可,登录成功后如下图所示:
-
如果你每次登录都使用 debian 用户进行登录,那么你可以将用户名和主机名使用
@
隔开作为 PuTTY 界面中的 Host Name,如下图所示。
-
这种情况下,单击 Open 按钮会直接要求你输入密码。
-
此外,如果你觉得每次输入这些信息比较繁琐,那么可以将这个设置保存起来,保存的步骤非常方便,只需要在 “Saved Sessions” 中为这个设置命名,并单击 Save 按钮即可。
-
保存之后,这个设置就会出现在已保存的会话列表中,使用该会话时,只需选中对应的会话名,并单击 Load 按钮即可载入对应的设置,或者直击双击对应的会话名即可打开连接。
三、通过 Etherenet 使用 SSH 连接
- 通过网络连接,可以使用户方便的从各种地方以及各种不同的电脑访问到 BeagleBone Black。
- 网线连接 BeagleBone Black 的步骤和使用 USB 连接相差不多,主要步骤有:
- (1)使用网线将 BeagleBone Black 连接到路由器,并将 5V直流适配器插入板载电源插口;
- (2)通过 SSH 连接,在 Windows 中需要使用 PuTTY 这类远程登录客户端连接,并且需要安装 Bonjour Print Services for Windows 软件使得在 Windows 系统下可以使用主机名访问狗板,在“Host Name” 栏中输入“beaglebone.local” 并且确保 “Connection type” 为 SSH,最后单击 Open 按钮;
- (3)如果是第一次连接以 SSH 方式连接,则会提示你连接到未知的主机,你可以安全的忽略这个消息;
- (4)默认情况下 Debian 系统的登录用户为
debian
,默认密码为temppwd
,输入密码不会显示,直接回车即可。
四、使用串口连接
BeagleBone Black 板上带有串行接口,通过它可以以串行方式与板子传输数据,当然也能够控制系统,在网络出现问题时,使用串行方式连接是非常方便的,而且系统会将启动信息都从串口中输出,这些信息有助于有能力的使用者进行调试系统。
当然,如果你使用 SSH 方式可以轻松的连接至 BeagleBone,那就不必通过这种方式连接,但是一定要明确这种方式可以以备不时之需。
这里串行连接有两种方式,第一种是使用 USB 端口选择串行连接,第二种是使用 USB 转 TTL 的连接线通过 J1 接口进行串行连接。
第一种串行连接方式
- 对于第一种串行连接方式,在前文已经为 BBB 安装好设备驱动,那么将 BBB 使用 USB 连接到计算机后,在“设备管理器”中会出现一个新的端口,如下图所示。
- 记录该端口号,启动 PuTTY 程序,在“Connection type” 栏中选择 Serial 连接方式,并将对应的端口号填入“Serial line” 中,传输速率“Speed”设置为 115200,如下图所示;
- 其余设置保持默认就可以,然后点击 Open 按钮;
- 此时,会出现一个空屏幕加一个闪烁的光标,按下回车出现登录界面,默认情况下 Debian 系统的登录用户为
debian
,默认密码为temppwd
,输入密码不会显示,直接回车即可。
第二种串行连接方式
- 对于第二种连接方式,需要使用 USB-串口适配器进行连接,使用 J1 接口的 6 个引脚进行通信。使用该方式,需要安装对应于 USB-串口适配器的驱动程序,剩余操作和第一种方法一致。
五、更新系统镜像
- 步骤 A:下载最新的系统镜像
-
从 beagleboard.org/latest-images 下载最新的 Debian 镜像文件。如果不需要使用图形用户界面 (GUI),推荐下载“IoT”版本,可节省更多的磁盘空间。
-
Debian 发行版是为 Beaglebone 开发板提供的。下载的文件将具有 .img.xz 扩展名,这是一个逐个扇区压缩的 SD 卡镜像。
- “Recommended Debian Images”中的镜像是在 SD 卡中使用的系统,如果要刷新到 eMMC 中,需要手动去修改环境文件(见下文);
- “Flasher” Debain Images 中的镜像文件是已经修改好环境文件了的,下载到 SD 卡后插入板子(选择在SD卡中启动)可以自动刷新到 eMMC 中。
-
- 步骤 B:安装 SD 卡编程工具
- 下载并安装 balenaEtcher。
- 步骤 C:将 SD 卡连接到你的电脑上
- 使用 SD 插槽或 USB 适配器将 SD 卡连接到计算机。
- 步骤 D:将系统镜像写到 SD 卡上
- 使用 Etcher 将系统镜像写到 SD 卡上。在将镜像写入 SD 卡之前,Etcher 会对图像进行实时解压。
- 打开软件显示如下界面,分为 3 步操作:
- 首先通过“Flash from file”选择下载好的镜像文件;
- 然后选择插入的 SD 卡;
- 最后点击 “Flash!” 开始写入系统。
- 步骤 E:弹出 SD 卡
- 弹出编程好的 SD 卡。
- 步骤 F:从 SD 卡上启动狗板
- 将狗板断电,然后将 SD 卡插入板子,按住 USER/BOOT 按钮,通过 USB 线或 5V 适配器供电。
- 如果使用原始的 BeagleBone 或 PocketBeagle,到这里就完成了。
- 步骤 G:将系统镜像写入 eMMC
- 如果使用 BeagleBone Black、BeagleBone Blue、BeagleBone AI 或其它带有板载 eMMC 闪存的板子,并且希望将镜像写入板载 eMMC 中,下载“Recommended Debian Images”中的镜像时需要按照下述方法进行操作 http://elinux.org/Beagleboard:BeagleBoneBlack_Debian#Flashing_eMMC。
- 要设置独立的 microSD 镜像在开机时自动刷新到 eMMC。以 debian 身份登录(默认密码为 temppwd),用 nano 或自己喜欢的编辑器来编辑 /boot/uEnv.txt(sudo nano /boot/uEnv.txt)
- 打开目录下的 /boot/uEnv.txt 文件:
##enable BBB: eMMC Flasher:
#cmdline=init=/opt/scripts/tools/eMMC/init-eMMC-flasher-v3.sh
改为:
##enable BBB: eMMC Flasher:
cmdline=init=/opt/scripts/tools/eMMC/init-eMMC-flasher-v3.sh
可选的,更新 Flasher 脚本:
cd /opt/scripts/
git pull
-
- 然后重新启动系统,在下次启动的时候就会将 SD 卡中的系统刷新到 eMMC 中,这大概需要 45 分钟。当刷新 eMMC 完成后,所有 4 个 USRx LED 将稳定地亮起或熄灭。
- 最新的 Debian 镜像在完成对 eMMC 的刷新后会自动关闭板子的电源,确保下载完成后拔出 SD 卡,否则在启动时会不断地对 eMMC 进行重新刷新。
总结
- 本文对狗板的几种连接方式进行了介绍,推荐初次使用和学习时可以使用 USB 连接和 SSH 访问,在熟悉基本操作后推荐使用网口连接到局域网络中进行使用,但需要单独进行供电。
- 使用狗板建议将系统更新至新版本,可以避免出现一些未知的问题。