PHP*_*ger 1 amazon-s3 amazon-ec2 amazon-web-services aws-cli
我试图将文件从S3复制到Ec2实例,这是奇怪的行为以下命令运行完全正常并向我显示s3的内容,我想访问
$aws s3 ls
2016-05-05 07:40:57 folder1
2016-05-07 15:04:42 my-folder
Run Code Online (Sandbox Code Playgroud)
然后我发出以下命令(也成功)
$ aws s3 ls s3://my-folder
2016-05-07 16:44:50 6007 myfile.txt
Run Code Online (Sandbox Code Playgroud)
但是当我尝试复制此文件时,我会发现如下错误
$aws s3 cp s3://my-folder/myfile.txt ./
Run Code Online (Sandbox Code Playgroud)
必须指定区域 - 区域或在配置文件中指定区域或指定环境变量.或者,可以使用--endpoint-url指定端点
我只想将txt文件从s3复制到ec2实例.至少修改上面的命令来复制内容.我不确定区域,如果我从网上访问S3它说
"S3不需要区域选择"
地球上发生了什么?
如果您的区域未在aws configure中设置为默认区域,则您很可能无法正常工作.
因此,根据我对S3的经验,如果这样做:
aws s3 ls s3://my-folder
那么这也应该有效:
aws s3 cp s3://my-folder/myfile.txt ./
但是,如果它要求您提供区域,那么您需要提供它.
试试这个来获取存储区域:
aws s3api get-bucket-location --bucket BUCKET
然后这个来复制文件:
aws s3 cp --region <your_buckets_region> s3://my-folder/myfile.txt ./
如果我从网上访问S3,它说
"S3不需要区域选择"
特别是对于该消息,S3和桶区域可能非常混乱.因为对于s3地区而言,它是IMO中最具误导性的信息.除非您启用了跨区域复制,否则每个存储桶都有特定区域(默认为us-east-1).
您可以选择一个区域来优化延迟,最小化成本或满足法规要求.存储在区域中的对象永远不会离开该区域,除非您明确地将它们传输到另一个区域 有关区域的更多信息,请参阅Amazon Simple Storage Service开发人员指南中的访问存储桶:.
| 归档时间: |
|
| 查看次数: |
2340 次 |
| 最近记录: |