使用 AWS Command Line Interface 在 Amazon S3 Glacier 中下载文件库清单 - Amazon S3 Glacier
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

使用 AWS Command Line Interface 在 Amazon S3 Glacier 中下载文件库清单

按照以下步骤操作,使用 AWS Command Line Interface (AWS CLI) 在 Amazon S3 Glacier (S3 Glacier) 中下载库存清单。

(先决条件)设置 AWS CLI

  1. 下载并配置 AWS CLI。有关说明,请参阅 AWS Command Line Interface 用户指南 中的以下主题。

    安装 AWS 命令行接口

    配置 AWS 命令行界面

  2. 在命令提示符处输入以下命令来验证设置。这些命令没有显式提供凭证,因此将使用默认配置文件的凭证。

    • 尝试使用 help 命令。

      aws help
    • 使用 aws s3 ls 获取所配置账户的存储桶列表。

      aws s3 ls
    • 使用 aws configure list 查看当前配置数据。

      aws configure list

示例:使用 AWS CLI 下载文件库清单

  1. 使用 initiate-job 命令启动清单检索作业。

    aws glacier initiate-job --vault-name awsexamplevault --account-id 111122223333 --job-parameters '{"Type": "inventory-retrieval"}'

    预期输出:

    { "location": "/111122223333/vaults/awsexamplevault/jobs/*** jobid ***", "jobId": "*** jobid ***" }
  2. 使用 describe-job 命令检查上一个检索作业的状态。

    aws glacier describe-job --vault-name awsexamplevault --account-id 111122223333 --job-id *** jobid ***

    预期输出:

    { "InventoryRetrievalParameters": { "Format": "JSON" }, "VaultARN": "*** vault arn ***", "Completed": false, "JobId": "*** jobid ***", "Action": "InventoryRetrieval", "CreationDate": "*** job creation date ***", "StatusCode": "InProgress" }
  3. 等待任务完成。

    您必须等到任务输出已作好供您下载的准备。S3 Glacier 完成作业后,作业 ID 至少在 24 小时内都不会过期。如果您在文件库中设置了通知配置,或者在启动作业时指定了 Amazon Simple Notification Service (Amazon SNS) 主题,则 S3 Glacier 会在完成作业后向该主题发送消息。

    您可以设置文件库的特定事件的通知配置。有关更多信息,请参阅在 Amazon S3 Glacier 中配置文件库通知。只要发生特定事件,S3 Glacier 就会向指定的 SNS 主题发送消息。

  4. 完成后,使用 get-job-output 命令将检索作业下载到文件 output.json

    aws glacier get-job-output --vault-name awsexamplevault --account-id 111122223333 --job-id *** jobid *** output.json

    此命令会生成一个包含以下字段的文件。

    { "VaultARN":"arn:aws:glacier:region:111122223333:vaults/awsexamplevault", "InventoryDate":"*** job completion date ***", "ArchiveList":[ {"ArchiveId":"*** archiveid ***", "ArchiveDescription":"*** archive description (if set) ***", "CreationDate":"*** archive creation date ***", "Size":"*** archive size (in bytes) ***", "SHA256TreeHash":"*** archive hash ***" } {"ArchiveId": ... ]}