Amazon S3 Glacier で AWS CLI を使用してアーカイブをダウンロードする - Amazon S3 Glacier

このページは、Vaults と 2012 年以降の元の REST API を使用する S3 Glacier サービスの既存のお客様のみを対象としています。

アーカイブストレージソリューションをお探しの場合は、Amazon S3、S3 Glacier Instant Retrieval、S3 Glacier Flexible Retrieval、S3 Glacier Deep Archive の S3 Glacier ストレージクラスを使用することをお勧めします。これらのストレージオプションの詳細については、「Amazon S3 ユーザーガイド」の「S3 Glacier ストレージクラス」およびS3 Glacier ストレージクラスを使用した長期データストレージ」を参照してください。 Amazon S3 これらのストレージクラスは Amazon S3 API を使用し、すべてのリージョンで利用でき、Amazon S3 コンソール内で管理できます。Storage Cost Analysis、Storage Lens、複数の暗号化オプションを含むセキュリティ機能などを提供します。

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Amazon S3 Glacier で AWS CLI を使用してアーカイブをダウンロードする

AWS Command Line Interface (AWS CLI)を使用して、Amazon S3 Glacier (S3 Glacier) のアーカイブをダウンロードできます。

(前提条件) AWS CLI の設定

  1. AWS CLI をダウンロードして設定します。手順については、「AWS Command Line Interface ユーザーガイド」の次のトピックを参照してください。

    AWS Command Line Interface のインストール

    AWS Command Line Interface の設定

  2. コマンドプロンプトで以下のコマンドを入力して、AWS CLI の設定を確認します。これらのコマンドは、いずれも認証情報を明示的に提供しないため、デフォルトプロファイルの認証情報が使用されます。

    • help コマンドを使用してください。

      aws help
    • 設定したアカウントの S3 Glacier ボールトのリストを取得するには、list-vaults コマンドを使用します。123456789012 を自分の AWS アカウント ID に置き換えます。

      aws glacier list-vaults --account-id 123456789012
    • AWS CLI の現在の設定データを確認するには、aws configure list コマンドを使用します。

      aws configure list

例: AWS CLI を使用してアーカイブをダウンロードする

注記

アーカイブをダウンロードするには、アーカイブ ID がわかっている必要があります。ステップ 1~4 でアーカイブ ID を取得します。ダウンロードするアーカイブ ID がすでにわかっている場合は、ステップ 5 に進みます。

  1. インベントリ取得ジョブを開始するには、initiate-job コマンドを使用します。インベントリレポートにアーカイブ ID が一覧表示されます。

    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. ジョブが完了するまで待ちます。

    ジョブの出力をダウンロードする準備が整うまで待つ必要があります。ボールトに通知設定を指定している場合、またはジョブを開始したときに Amazon Simple Notification Service (Amazon SNS) トピックを指定している場合は、ジョブの完了後に S3 Glacier からそのトピックにメッセージが送信されます。

    ボールトに特定のイベントに対する通知設定を指定できます。詳細については、「Amazon S3 Glacier でのボールト通知の設定」を参照してください。S3 Glacier は、特定のイベントが発生するたびに、指定された SNS トピックにメッセージを送信します。

  4. 完了したら、get-job-output コマンドを使用して、取得ジョブをファイル output.json にダウンロードします。このファイルにアーカイブ ID が含まれます。

    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": ... ]}
  5. initiate-job コマンドを使用して、ボールトから各アーカイブを取得するプロセスを開始します。以下に示すようにジョブパラメータを archive-retrieval と指定する必要があります。

    aws glacier initiate-job --vault-name awsexamplevault --account-id 111122223333 --job-parameters="{\"Type\":\"archive-retrieval\",\"ArchiveId\":\"*** archiveId ***\"}"
  6. archive-retrieval ジョブが完了するまで待ちます。以前のコマンドのステータスをチェックするには、describe-job コマンドを使用します。

    aws glacier describe-job --vault-name awsexamplevault --account-id 111122223333 --job-id *** jobid ***
  7. 上記のジョブが完了したら、get-job-output コマンドを使用してアーカイブをダウンロードします。

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