Intel® IoT 平台:使用 SCP 进行 Linux 文件传输。
在本指南中,您将学习如何将文件传输到 Intel® Edison 或 Intel® Galileo 板等 Intel® 物联网设备与您的计算机之间。
获取新的 Intel® 物联网开发者套件,这是一套完整的软硬件解决方案,可让开发者使用 Intel® Galileo 和 Intel® Edison 板创建令人兴奋的新解决方案。访问 Intel® 物联网开发者专区。
概述
在本指南中,您将学习如何将文件传输到 Intel® Edison 或 Intel® Galileo 板等 Intel® 物联网设备与您的计算机之间。
注意:本指南目前仅适用于 Linux 操作系统;Windows* 和 OS X* 指南稍后提供。
要求
您的 Intel 物联网设备已安装最新固件,并已连接到网络。
如何刷写 Intel® Edison 板固件:Windows* OS X* Linux*
如何刷写 Intel® Galileo 板固件:Windows* OS X* Linux*
步骤
SCP 是“安全复制”的缩写,是一种使用安全 Shell (SSH) 协议的文件传输方法。要设置 SCP,请按照以下步骤操作
-
更新您计算机上的 OpenSSH。打开终端并输入以下 **粗体** 命令
-
sudo apt-get remove openssh-client openssh-server
-
出现提示时,输入 **Y** 然后按 Enter。
-
sudo apt-get install openssh-client openssh-server
-
出现提示时,输入 Y 然后按 Enter。
-
安装完成后,您应该会看到类似于图 1 的输出。
图 1:安装 OpenSSH 后的输出 -
-
查找您计算机在本地网络上的 IP 地址。在您的计算机上打开终端并输入以下命令
-
ifconfig
在输出中,如果您的计算机通过以太网连接到路由器/调制解调器,请查找 eth0;如果通过 Wi-Fi* 连接,请查找 wlan0。在 eth0 或 wlan0 之后,查找 inet addr: xxx.xxx.x.xxx。xxx.xxx.x.xxx 是您将用于与计算机传输文件的 IP 地址。在图 2 中,IP 地址被圈出,在这种情况下是 192.168.1.158。
-
**注意:** 您的 IP 地址很可能**不是** 192.168.1.158
图 2 -
-
通过 USB 连接插入您的 Intel 物联网设备。您的设备应该会通电。
-
使用名为 ‘screen’ 的实用程序通过串行连接连接到您的设备。在您的计算机上打开终端并输入以下粗体命令。
-
如果您没有安装 screen,请先运行:**sudo apt-get install screen**
-
要连接到您的设备,请运行:**sudo screen /dev/ttyUSB0 115200**
-
根据您的配置方式,输入您的设备名称或 root 作为用户名,以及密码。要重新配置您的设备,请通过串行终端运行 **configure_edison**。
-
-
在您的计算机上,导航到您要将文件传输到或从设备传输到的位置。我为此目的创建了 /home/root/transfer 文件夹。因此,我将在设备的终端中输入以下命令进行导航
-
cd /home/root/transfer
-
-
要将文件从您的计算机传输到您的设备,请使用以下命令,其中 USERNAME 是您的计算机用户名,xxx.xxx.x.xxx 是第 2 步中的 IP 地址,/file/to/transfer 是您要在计算机上传输的文件的路径,/path/to/location 是您要在设备上将文件传输到的位置
-
scp USERNAME@xxx.xxx.x.xxx:/file/to/transfer /path/to/location
如果被要求建立受信任的连接,请输入 Y 然后按 Enter。您还将看到输入您的计算机用户名和密码的提示。输入它们然后按 Enter。
例如,这是我将文件“example.txt”从我的计算机上的 /home/user/martin/example.txt 传输到我的设备的方式
-
scp martin@192.168.1.158:/home/user/martin/example.txt ./
**注意:** 行末的 ./ 表示文件将复制到您当前文件夹,或根据第 5 步的示例,复制到我设备上的 ** /home/root/transfer **;但是,您可以输入任何您想要的路径。
如果传输成功,您将看到类似于图 3 的输出。
-
-
要将文件从您的设备传输到您的计算机,请使用以下命令,其中 USERNAME 是您的计算机用户名,xxx.xxx.x.xxx 是第 2 步中的 IP 地址,/file/to/transfer 是您要传输到计算机的文件,/path/to/location 是文件将在您的计算机上传输到的位置的路径
-
scp /file/to/transfer USERNAME@xxx.xxx.x.xxx:/path/to/location
如果被要求建立受信任的连接,请输入 Y 然后按 Enter。您还将看到输入您的计算机用户名和密码的提示,输入它们然后按 Enter。
例如,这是我将名为“example.txt”的文件从我的设备上的 /home/root/transfer/example.txt 传输到我的计算机的方式
-
scp /home/root/transfer/example.txt martin@192.168.1.158:/home/user/martin/
如果传输成功,您将看到类似于图 3 的输出
图 3:成功的 scp 传输 -
故障排除
如果您有任何问题或疑问,请访问 Intel Edison 论坛 提出您的问题并查找解决方案。