所以大约 14 小时前,我确实在我的 S3 存储桶中的 2 个文件夹(相对较大的 10.5 TiB 和 200 GiB)上运行了恢复命令
s3cmd restore --recursive --restore-days=4 -restore-priority=bulk s3://mybucket/folder1/
s3cmd restore --recursive --restore-days=4 -restore-priority=bulk s3://mybucket/folder2/
现在我想将两个文件夹复制到不同的存储桶中
aws s3 sync s3://mybucket/folder1/ s3://mybucket2/
和
aws s3 sync s3://mybucket/folder2/ s3://mybucket2/
但 aws cli 告诉我,我所有的对象都属于 GLACIER 存储类,我必须先恢复它们。我就是这么想的。当我在 Web 界面中查看它们时,它们似乎已恢复并且已经有过期日期。到期日期是 Apr 14, 2018 2:00:00 AM GMT+0200
所以从现在起超过 4 天(这是我写这个 Apr 9, 2018 10 的时候: 30:00 AM GMT+0200
) 这是否意味着对象仅在 2018 年 4 月 10 日 2:00:00 AM GMT+0200
可用以符合 4 天的恢复时间?
一些编辑:
一)
我至少认为为什么到期日期超过 4 天,因为 AWS 总是将日期四舍五入到下一个 UTC 午夜,在本例中是 Apr 14, 2018 2:00:00 AM GMT +0200
二)
它还尝试通过可以正常工作的 Web 界面下载文件
c)
当我使用 aws s3api head-object --bucket mybucket --key folder1/part1.file
获取元数据时,这是响应:
{
"Restore": "ongoing-request=\"false\", expiry-date=\"Sat, 14 Apr 2018 00:00:00 GMT\"",
"AcceptRanges": "bytes",
"ContentType": "binary/octet-stream",
"LastModified": "Wed, 20 Dec 2017 15:02:48 GMT",
"ContentLength": 59408357,
"ETag": "\"49b981b95eaf62abed0880c0db7c1200-8\"",
"StorageClass": "GLACIER",
"Metadata": {}
}
这似乎是应该的样子。
d)
当我尝试使用 aws s3 cp s3://mybucket/folder1/part1.file s3://mybucket2/
进行复制时,它起作用了,但是 --recursive 不起作用 aws s3 cp --递归 s3://mybucket/folder1/s3://mybucket2/
最佳答案
我遇到了同样的问题,以下命令对我有用:
aws s3 cp s3://buckt_name/dir1/ s3://bucket_name/dir1/ --recursive --force-glacier-transfer
关于amazon-web-services - S3 Glacier 对象未还原,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49728694/