65.9K
CodeProject 正在变化。 阅读更多。
Home

Intel® IoT 平台:使用 SCP 进行 Linux 文件传输。

starIconstarIconstarIconstarIconstarIcon

5.00/5 (1投票)

2015年11月13日

CPOL

4分钟阅读

viewsIcon

21465

在本指南中,您将学习如何将文件传输到 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,请按照以下步骤操作

  1. 更新您计算机上的 OpenSSH。打开终端并输入以下 **粗体** 命令

    • sudo apt-get remove openssh-client openssh-server

    • 出现提示时,输入 **Y** 然后按 Enter。

    • sudo apt-get install openssh-client openssh-server

    • 出现提示时,输入 Y 然后按 Enter。

    • 安装完成后,您应该会看到类似于图 1 的输出。

    图 1:安装 OpenSSH 后的输出
  2. 查找您计算机在本地网络上的 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
  3. 通过 USB 连接插入您的 Intel 物联网设备。您的设备应该会通电。

  4. 使用名为 ‘screen’ 的实用程序通过串行连接连接到您的设备。在您的计算机上打开终端并输入以下粗体命令。

    • 如果您没有安装 screen,请先运行:**sudo apt-get install screen**

    • 要连接到您的设备,请运行:**sudo screen /dev/ttyUSB0 115200**

    • 根据您的配置方式,输入您的设备名称或 root 作为用户名,以及密码。要重新配置您的设备,请通过串行终端运行 **configure_edison**。

  5. 在您的计算机上,导航到您要将文件传输到或从设备传输到的位置。我为此目的创建了 /home/root/transfer 文件夹。因此,我将在设备的终端中输入以下命令进行导航

    • cd /home/root/transfer

  6. 要将文件从您的计算机传输到您的设备,请使用以下命令,其中 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 的输出。

  7. 要将文件从您的设备传输到您的计算机,请使用以下命令,其中 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 论坛 提出您的问题并查找解决方案。

© . All rights reserved.