使用 SCP 将文件传输到 Linux 实例 - Amazon Elastic Compute Cloud
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

使用 SCP 将文件传输到 Linux 实例

在您的本地计算机与 Linux 实例之间传输文件的一种方法是使用安全复制协议 (SCP)。本节介绍了如何使用 SCP 传输文件。该步骤与使用 SSH 连接到实例的步骤类似。

在使用 SCP 连接到 Linux 实例之前,请先完成以下任务:

以下过程将指导您使用实例的公有 DNS 名称或 IPv6 地址(如果实例具有该地址),通过 SCP 传输文件。

使用 SCP 在您的计算机和实例之间传输文件
  1. 确定源文件在计算机上的位置以及在实例上的目标路径。在以下示例中,私有密钥文件的名称是 key-pair-name.pem,要传输的文件是 my-file.txt,实例的用户名是 ec2-user,实例的公有 DNS 名称是 instance-public-dns-name,实例的 IPv6 地址是 instance-IPv6-address

    • (公有 DNS)要将文件传输到实例上的目标位置,请在计算机中输入以下命令。

      scp -i /path/key-pair-name.pem /path/my-file.txt ec2-user@instance-public-dns-name:path/
    • (IPv6) 如果实例具有 IPv6 地址,要将文件传输到实例上的目标位置,请在计算机中输入以下命令。IPv6 地址必须用方括号 ([ ]) 括起来,并且必须对方括号进行转义 (\)。

      scp -i /path/key-pair-name.pem /path/my-file.txt ec2-user@\[instance-IPv6-address\]:path/
  2. 如果您尚未使用 SSH 连接到实例,则会看到如下响应:

    The authenticity of host 'ec2-198-51-100-1.compute-1.amazonaws.com (10.254.142.33)'
    can't be established.
    RSA key fingerprint is 1f:51:ae:28:bf:89:e9:d8:1f:25:5d:37:2d:7d:b8:ca:9f:f5:f1:6f.
    Are you sure you want to continue connecting (yes/no)?

    (可选)您可以选择验证安全警报中的指纹是否与实例指纹匹配。有关更多信息,请参阅(可选)获取实例指纹

    输入 yes

  3. 如果传输成功,则响应的形式与下方类似:

    Warning: Permanently added 'ec2-198-51-100-1.compute-1.amazonaws.com' (RSA) 
    to the list of known hosts.
    my-file.txt                                100%   480     24.4KB/s   00:00
  4. 要在另一个方向上传输文件(从 Amazon EC2 实例中传输到计算机),请颠倒主机参数的顺序。例如,您可以将 my-file.txt 从 EC2 实例传输到本地计算机上的目标位置,保存为 my-file2.txt,如以下示例所示。

    • (公有 DNS)要将文件传输到计算机中的目标位置,请在计算机中输入以下命令。

      scp -i /path/key-pair-name.pem ec2-user@instance-public-dns-name:path/my-file.txt path/my-file2.txt
    • (IPv6) 如果实例具有 IPv6 地址,要将文件传输到计算机中的目标位置,请在计算机中输入以下命令。IPv6 地址必须用方括号 ([ ]) 括起来,并且必须对方括号进行转义 (\)。

      scp -i /path/key-pair-name.pem ec2-user@\[instance-IPv6-address\]:path/my-file.txt path/my-file2.txt