无法从AWS S3检索已恢复的存档'无效的大小值:1g'

时间:2016-03-31 23:39:34

标签: amazon-s3 amazon-ec2 docker aws-cli amazon-glacier

我有一个430G对象,几个月前我使用生命周期策略从S3归档到Glacier。我正在关注Archiving Amazon S3 Data to Amazon Glacier博客和Transitioning to the GLACIER storage class (Object Archival)

  

您的恢复对象将在保留期内保留在Glacier和S3的Reduced Redundancy Storage(RRS)中.....   尽管这些对象是在Glacier中存档的,但您无法通过Glacier API获取它们....因为Amazon S3维护了您的用户定义的对象名称与Amazon Glacier系统定义的标识符之间的映射,所以Amazon S3对象是使用Amazon Glacier选项存储的只能通过Amazon S3 API

访问

我通过控制台将对象恢复到S3(花了大约5个小时)它说它可用,但当我尝试使用awscli下载对象时,我不断收到错误'无效大小值:1g'

我正在尝试使用aws s3 cp命令(适用于其他对象)下载到EC2实例。此实例具有关联的角色,允许读/写该S3存储桶/文件夹。我还检查了ubuntu用户对我试图下载对象的位置有写权限。

aws --version

aws-cli/1.10.17 Python/2.7.10 Linux/4.2.0-30-generic botocore/1.4.8

aws s3 cp s3://cab-arch/Backups/160211_Archive.tar 160211_Archive.tar

任何帮助将不胜感激,我找不到任何有关此特定错误的信息。

1 个答案:

答案 0 :(得分:0)

事实证明,这实际上是由一个docker bug引起的。我试图下载的文件系统以前是由docker容器安装的。虽然docker ps没有显示任何正在运行的容器,但fd命令显示该容器在该文件系统上仍有多个“打开”文件。我杀死了码头工,一切都很顺利。 Info on this docker bug