我已将 mysql 备份文件上传到 amazon s3 s3://bucketname/object/mysqlbackupfile
。当我尝试使用它来检索它时,s3cmd get s3://bucketname/object/mysqlbackupfile
弹出一个错误“错误:参数问题:需要 S3 URI 而不是 '-'”。有人能帮我吗?我正在使用 ubuntu 14.04 lts,我正在从 scaleway 服务器尝试此操作。
答案1
为什么不使用常规的 aws cli?我从来没有遇到过任何问题,而且由提供商维护。我推荐它,因为我遇到了一些 s3cmd 问题。
您可以使用 轻松安装它pip install awscli
,然后运行aws configure
(您必须输入一些配置详细信息和凭据)。如果您尚未安装 pip,则可以使用 进行安装sudo apt-get install python-pip
。
此后,您将拥有一个功能更广泛的工具,例如多个帐户和区域。
如果你想下载文件,请运行:
aws s3 cp s3://bucketname/folder/file /local/folder/file
对于上传,您可以使用:
aws s3 cp /local/folder/file s3://bucketname/folder/file
如果您想递归复制整个目录,只需使用位置和--recursive选项:
aws s3 cp /local/folder/ s3://bucketname/folder/ --recursive
如果您还想保留本地文件并在本地文件夹和 S3 存储桶之间进行同步,则可以使用:
aws s3 sync s3://bucketname/folder /local/fodler
而且它还具有强大的“帮助”功能:aws help
或aws <command> help
。
答案2
使用 s3 bucket 的端点。例如 URL:bucketname.s3-website-us-west-1.amazonaws.com
您可以在 s3 属性中获取此 URL。
使用URL而不是bucket名称来下载。