用于从Raspberry Pi到Amazon S3的FTP文件传输的Bash脚本

时间:2018-06-15 15:02:38

标签: bash amazon-s3 ftp raspberry-pi2

我尝试使用bash脚本将#bin文件从我的Raspberry Pi 2传输到Amazon S3服务器" connect_ftp_amazon"如下:

#!/bin/bash

HOST='XX.XXX.XXX.XXX'
USER='my_user'
PASSWD='my_password'
DIR='/s3_folder'
LOCALPATH='/raspberrypi_folder'

ftp -inv $HOST <<EOF
quote USER $USER
quote PASS $PASSWD
cd $DIR
lcd $LOCALPATH
mput *.bin
quit
exit;
EOF

但是,当我尝试使用

在终端窗口中执行它时
chmod a+x connect_ftp_amazon
sudo ./connect_ftp_amazon

我得到了

ftp: connect: Connection timed out
Not connected.
Not connected.
Not connected.
Local directory now /home/pi/raspberrypi_folder
Not connected.

我想我以错误的格式传递我的主机和/或用户参数,因为它适用于Linux服务器。有人可以帮我确定我的设置有什么问题吗?

1 个答案:

答案 0 :(得分:0)

您无法使用FTP连接到Amazon S3。你必须使用S3协议。

使用aws s3s3cmd命令。

请参阅Uploading files to S3 account from Linux command line

虽然您可以将S3存储桶安装到(Linux)服务器并在那里设置FTP / SFTP服务器。请参阅FTP/SFTP access to an Amazon S3 Bucket