

 **此頁面僅適用於使用 Vaults 和 2012 年原始 REST API 的 Amazon Glacier 服務的現有客戶。**

如果您要尋找封存儲存解決方案，建議您在 Amazon Glacier Instant Retrieval、S3 Glacier Flexible Retrieval 和 S3 Glacier Deep Archive 中使用 Amazon Glacier 儲存類別。 Amazon S3 若要進一步了解這些儲存選項，請參閱 [Amazon Glacier 儲存類別](https://aws.amazon.com/s3/storage-classes/glacier/)。

Amazon Glacier （原始獨立保存庫型服務） 不再接受新客戶。Amazon Glacier 是一項獨立服務，具有自己的 APIs，可將資料存放在保存庫中，並與 Amazon S3 和 Amazon S3 Glacier 儲存類別不同。您現有的資料將在 Amazon Glacier 中無限期保持安全且可存取。不需要遷移。對於低成本、長期的封存儲存， AWS 建議使用 [Amazon S3 Glacier 儲存類別](https://aws.amazon.com/s3/storage-classes/glacier/)，透過 S3 儲存貯體型 APIs、完整 AWS 區域 可用性、降低成本 AWS 和服務整合，提供卓越的客戶體驗。如果您想要增強功能，請考慮使用我們的解決方案指南，將資料從 Amazon S3 Glacier 保存庫傳輸至 Amazon S3 Glacier 儲存類別，以遷移至 Amazon S3 Glacier 儲存類別。 [AWS Amazon Glacier Amazon S3 ](https://aws.amazon.com/solutions/guidance/data-transfer-from-amazon-s3-glacier-vaults-to-amazon-s3/)

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 在 Amazon Glacier 中刪除保存庫
<a name="deleting-vaults"></a>

Amazon Glacier (Amazon Glacier) 只有在保存庫中截至其計算的最後一個庫存沒有封存，且自上次清查以來沒有寫入保存庫時，才會刪除保存庫。如需刪除封存的資訊，請參閱 [在 Amazon Glacier 中刪除封存](deleting-an-archive.md)。如需下載文件庫清查的詳細資訊，請參閱[在 Amazon Glacier 中下載保存庫庫存](vault-inventory.md)。

 

**注意**  
Amazon Glacier 會每 24 小時定期為每個保存庫準備好庫存。由於庫存可能不會反映最新資訊，Amazon Glacier 會檢查自上次保存庫庫存以來是否有任何寫入操作，以確保保存庫確實是空的。

**注意**  
如需自動刪除保存庫封存，請參閱 [Amazon S3 Glacier 中的自動刪除保存庫封存](https://aws.amazon.com/solutions/guidance/automated-deletion-of-vault-archives-in-amazon-s3-glacier/)。

**Topics**
+ [使用 在 Amazon Glacier 中刪除保存庫 適用於 Java 的 AWS SDK](deleting-vaults-sdk-java.md)
+ [使用 在 Amazon Glacier 中刪除保存庫 適用於 .NET 的 AWS SDK](deleting-vaults-sdk-dotnet.md)
+ [使用 REST API 在 Amazon Glacier 中刪除保存庫](deleting-vault-rest-api.md)
+ [使用 Amazon Glacier 主控台刪除空保存庫](deleting-vaults-console.md)
+ [使用 在 Amazon Glacier 中刪除保存庫 AWS Command Line Interface](deleting-vaults-cli.md)

# 使用 在 Amazon Glacier 中刪除保存庫 適用於 Java 的 AWS SDK
<a name="deleting-vaults-sdk-java"></a>

以下是使用 適用於 Java 的 AWS SDK低階 API 來刪除文件庫的步驟。

 

1. 建立 `AmazonGlacierClient` 類別的執行個體 (用戶端)。

   您需要指定從中刪除保存庫 AWS 的區域。您使用此用戶端執行的所有操作都會套用到該 AWS 區域。

1. 您可以透過建立 `DeleteVaultRequest` 類別的執行個體來提供請求資訊。

   您需要提供保存庫名稱和帳戶 ID。如果您不提供帳戶 ID，則會使用與您提供來簽署請求之登入資料關聯的帳戶 ID。如需詳細資訊，請參閱[適用於 Java 的 AWS SDK 搭配 Amazon Glacier 使用](using-aws-sdk-for-java.md)。

1. 以參數形式提供請求物件，以便執行 `deleteVault` 方法。

   Amazon Glacier (Amazon Glacier) 只會在保存庫為空時刪除保存庫。如需詳細資訊，請參閱[刪除文件庫 (DELETE 文件庫)](api-vault-delete.md)。

下列 Java 程式碼片段描述前述步驟。

 

```
try {
    DeleteVaultRequest request = new DeleteVaultRequest()
        .withVaultName("*** provide vault name ***");

    client.deleteVault(request);
    System.out.println("Deleted vault: " + vaultName);
} catch (Exception e) {
    System.err.println(e.getMessage());
}
```

**注意**  
如需基礎 REST API 的資訊，請參閱 [刪除文件庫 (DELETE 文件庫)](api-vault-delete.md)。

## 範例：使用 刪除保存庫 適用於 Java 的 AWS SDK
<a name="deleting-vaults-sdk-java-example"></a>

如需運作中程式碼範例，請參閱「[範例：使用 建立保存庫 適用於 Java 的 AWS SDK](creating-vaults-sdk-java.md#creating-vaults-sdk-java-example)」。Java 程式碼範例顯示基本文件庫操作，包括建立和刪除文件庫。

# 使用 在 Amazon Glacier 中刪除保存庫 適用於 .NET 的 AWS SDK
<a name="deleting-vaults-sdk-dotnet"></a>

適用於 .NET 的 Amazon 開發套件提供的[高階和低階 API](using-aws-sdk.md) 都提供了建立保存庫的方法。

**Topics**
+ [使用 的高階 API 刪除保存庫 適用於 .NET 的 AWS SDK](#deleting-vault-sdk-dotnet-high-level)
+ [使用 的低階 API 刪除保存庫 適用於 .NET 的 AWS SDK](#deleting-vault-sdk-dotnet-low-level)

## 使用 的高階 API 刪除保存庫 適用於 .NET 的 AWS SDK
<a name="deleting-vault-sdk-dotnet-high-level"></a>

高階 API 的 `ArchiveTransferManager` 類別提供可用來刪除保存庫的 `DeleteVault` 方法。

### 範例：使用 的高階 API 刪除保存庫 適用於 .NET 的 AWS SDK
<a name="deleting-vaults-sdk-dotnet-high-level-example"></a>

如需運作中程式碼範例，請參閱「[範例：使用 的高階 API 進行保存庫操作 適用於 .NET 的 AWS SDK](creating-vaults-dotnet-sdk.md#vault-operations-example-dotnet-highlevel)」。C\$1 程式碼範例顯示基本保存庫作業，包括建立和刪除保存庫。

## 使用 的低階 API 刪除保存庫 適用於 .NET 的 AWS SDK
<a name="deleting-vault-sdk-dotnet-low-level"></a>

以下是使用 適用於 .NET 的 AWS SDK刪除保存庫的步驟。

 

1. 建立 `AmazonGlacierClient` 類別的執行個體 (用戶端)。

   您需要指定從中刪除保存庫 AWS 的區域。您使用此用戶端執行的所有操作都適用於該 AWS 區域。

1. 您可以透過建立 `DeleteVaultRequest` 類別的執行個體來提供請求資訊。

   您需要提供保存庫名稱和帳戶 ID。如果您不提供帳戶 ID，則會使用與您提供來簽署請求之登入資料關聯的帳戶 ID。如需詳細資訊，請參閱[適用於 .NET 的 AWS SDK 搭配 Amazon Glacier 使用](using-aws-sdk-for-dot-net.md)。

1. 以參數形式提供請求物件，以便執行 `DeleteVault` 方法。

   Amazon Glacier (Amazon Glacier) 只會在保存庫為空時刪除保存庫。如需詳細資訊，請參閱[刪除文件庫 (DELETE 文件庫)](api-vault-delete.md)。

下列 C\$1 程式碼片段描述前述步驟。程式碼片段會擷取預設 AWS 區域中保存庫的中繼資料資訊。

```
AmazonGlacier client;
client = new AmazonGlacierClient(Amazon.RegionEndpoint.USEast1);

DeleteVaultRequest request = new DeleteVaultRequest()
{
  VaultName = "*** provide vault name ***"
};

DeleteVaultResponse response = client.DeleteVault(request);
```

**注意**  
如需基礎 REST API 的資訊，請參閱 [刪除文件庫 (DELETE 文件庫)](api-vault-delete.md)。

### 範例：使用 的低階 API 刪除保存庫 適用於 .NET 的 AWS SDK
<a name="creating-vaults-sdk-dotnet-low-level-example"></a>

如需運作中程式碼範例，請參閱「[範例：使用 的低階 API 的保存庫操作 適用於 .NET 的 AWS SDK](creating-vaults-dotnet-sdk.md#vault-operations-example-dotnet-lowlevel)」。C\$1 程式碼範例顯示基本保存庫作業，包括建立和刪除保存庫。

# 使用 REST API 在 Amazon Glacier 中刪除保存庫
<a name="deleting-vault-rest-api"></a>

若要使用 REST API 刪除文件庫，請參閱 [刪除文件庫 (DELETE 文件庫)](api-vault-delete.md)。

# 使用 Amazon Glacier 主控台刪除空保存庫
<a name="deleting-vaults-console"></a>

**注意**  
若要刪除保存庫，您必須先刪除該保存庫內所有現有的封存。您可以使用 REST API、、 或 AWS Command Line Interface () 撰寫程式碼來提出刪除封存請求 適用於 Java 的 AWS SDK， 適用於 .NET 的 AWS SDK藉此執行此操作AWS CLI。如需刪除封存的資訊，請參閱 [步驟 5：從 Amazon Glacier 中的保存庫刪除封存](getting-started-delete-archive.md)。

保存庫清空後，您就可以使用下列步驟將其刪除。

**使用 Amazon Glacier 主控台刪除空保存庫**

1. 登入 AWS 管理主控台 ，並在 Amazon Glacier 主控台開啟 [Amazon Glacier 主控台](https://console.aws.amazon.com/glacier/home)。

1. 在**選取區域**下，選擇保存庫所在的 AWS 區域 。

1. 在左側導覽窗格中，選擇**保存庫**。

1. 在**保存庫**清單中，選取要刪除之保存庫名稱旁的選項，然後選擇頁面頂端的**刪除**。

1. 在**刪除保存庫**對話方塊中，透過選擇**刪除**來確認您要刪除保存庫。
**重要**  
刪除保存庫無法復原。

1. 若要確認您是否已刪除保存庫，請開啟**保存庫**清單，然後輸入您已刪除的保存庫名稱。如果找不到保存庫，就表示已成功刪除。

# 使用 在 Amazon Glacier 中刪除保存庫 AWS Command Line Interface
<a name="deleting-vaults-cli"></a>

您可以使用 () AWS Command Line Interface 刪除 Amazon Glacier (Amazon Glacier) 中的空和非空保存庫AWS CLI。

**Topics**
+ [（先決條件） 設定 AWS CLI](#Creating-Vaults-CLI-Setup)
+ [範例：使用 刪除空保存庫 AWS CLI](#Deleting-Empty-Vaults-CLI-Implementation)
+ [範例：使用 刪除非空保存庫 AWS CLI](#Deleting-A-Nonempty-Vaults-CLI-Implementation)

## （先決條件） 設定 AWS CLI
<a name="Creating-Vaults-CLI-Setup"></a>

1. 下載和設定 AWS CLI。如需相關指示，請參閱《AWS Command Line Interface 使用者指南》**中的下列主題：

    [安裝 AWS Command Line Interface](https://docs.aws.amazon.com/cli/latest/userguide/installing.html) 

   [設定 AWS Command Line Interface](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-getting-started.html)

1. 在命令提示中輸入下列命令來驗證您的 AWS CLI 設定。這些命令不會明確提供登入資料，因此會使用預設描述檔的登入資料。
   + 嘗試使用幫助命令。

     ```
     aws help
     ```
   + 若要取得已設定帳戶上的 Amazon Glacier 保存庫清單，請使用 `list-vaults`命令。將 *123456789012* 取代為您的 AWS 帳戶 ID。

     ```
     aws glacier list-vaults --account-id 123456789012
     ```
   + 若要查看 目前的組態資料 AWS CLI，請使用 `aws configure list`命令。

     ```
     aws configure list
     ```

## 範例：使用 刪除空保存庫 AWS CLI
<a name="Deleting-Empty-Vaults-CLI-Implementation"></a>
+ 使用 `delete-vault` 指令刪除不包含存檔的文件庫。
  + 

    ```
    aws glacier delete-vault --vault-name awsexamplevault --account-id 111122223333
    ```

## 範例：使用 刪除非空保存庫 AWS CLI
<a name="Deleting-A-Nonempty-Vaults-CLI-Implementation"></a>

Amazon Glacier 只有在保存庫中截至其計算的最後一個庫存沒有封存，且自上次清查以來沒有寫入保存庫時，才會刪除保存庫。刪除非空的文件庫有三個步驟：從文件庫的清查報告擷取存檔 ID、刪除每個存檔，然後刪除文件庫。

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 ***"
   }
   ```

1. 使用 `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"
   }
   ```

1. 等候 工作完成。

   您必須等到任務輸出準備好供您下載。如果您在保存庫上設定通知組態，或在啟動任務時指定 Amazon Simple Notification Service (Amazon SNS) 主題，Amazon Glacier 會在任務完成後傳送訊息至主題。

   您可以為文件庫中的特定事件設定通知組態。如需詳細資訊，請參閱[在 Amazon Glacier 中設定保存庫通知](configuring-notifications.md)。Amazon Glacier 會在發生特定事件時傳送訊息至指定的 SNS 主題。

1. 完成時，請使用 `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":
   ...
   ]}
   ```

1. 使用 `delete-archive` 命令從文件庫中刪除每個存檔，直到沒有存檔為止。

   ```
   aws glacier delete-archive --vault-name awsexamplevault --account-id 111122223333 --archive-id "*** archiveid ***"
   ```
**注意**  
如果您的封存 ID 以連字號或其他特殊字元開頭，您必須以引號括住封存 ID，才能執行此命令。

1. 使用 `initiate-job` 命令來啟動新的清查擷取任務。

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

1. 完成後，請使用 `delete-vault` 命令刪除沒有存檔的文件庫。

   ```
   aws glacier delete-vault --vault-name awsexamplevault --account-id 111122223333
   ```