【发布时间】:2016-02-22 17:05:24
【问题描述】:
我正在将文件从 S3 存储桶传输到 EC2 实例。
使用 AWS CLI,我可以看到有问题的 S3 存储桶中有 219 个文件,总大小约为 43GB
[IN]
aws s3api list-objects --bucket resultsdata --output json --query "[sum(Contents[].Size), length(Contents[])]"
[OUT]
[
43367899797,
219
]
我一直在使用AWS S3 sync command 将文件从存储桶传输到 EC2 机器。
当我运行它时,我成功地看到了存储桶中各个文件的下载。但是 - 它似乎过早地结束了。
Completed 706 of 1550 part(s) with 36 file(s) remaining
当我去下载位置并进行文件计数时
ind /home/ec2-user -type f | wc -l
我得到 198 个文件,而不是 219 个。
我已经多次运行 AWS 同步命令
aws s3 sync s3://MYBUCKETNAME .
我错过了什么?
编辑
我已排除 S3 存储桶中存在重复
编辑 2
从 ec2 中删除文件并尝试使用 cp -
aws s3 cp s3://mybucket . --recursive
我明白了
Completed 4286 of 5084 part(s) with 34 file(s) remaining
但是 - 当我计算文件时,我又得到一个不同的数字,186。
所以 sync 给我 198,cp 给我 186。两者都缺少 S3 存储桶中的 219 个文件。有人吗?!
【问题讨论】:
-
你知道它是否包括文件夹吗?虽然 S3 中并不真正存在文件夹,但有时会创建零字节文件作为占位符。顺便说一句,我喜欢 [sum(Contents)] 的东西——我从来不知道这是可能的!
-
好点子!但是,我找到了真正的罪魁祸首。我没有剩余磁盘空间!我认为 S3 真的应该以错误消息的形式告诉我...
标签: amazon-web-services amazon-s3 amazon-ec2