

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

# 停用 Amazon EC2 AMI
<a name="disable-an-ami"></a>

可以停用 AMI 以防止其用於執行個體啟動。無法從已停用的 AMI 中啟動新執行個體。可以重新啟用已停用的 AMI，以便在執行個體啟動時再次使用它。

可以同時停用私有和公有 AMI。

如需減少很少使用但需長期保留的停用 EBS 支援的 AMI 的儲存費用，您可封存其關聯的快照。如需詳細資訊，請參閱「Amazon EBS 使用者指南」**中的[檔案 Amazon EBS 快照](https://docs.aws.amazon.com/ebs/latest/userguide/snapshot-archive.html)。

**Topics**
+ [AMI 停用運作方式](#how-disable-ami-works)
+ [成本](#ami-disable-costs)
+ [先決條件](#ami-disable-prerequisites)
+ [所需的 IAM 許可](#ami-disable-iam-permissions)
+ [停用 AMI](#disable-ami)
+ [描述已停用的 AMI](#describe-disabled-ami)
+ [重新啟用已停用的 AMI](#re-enable-a-disabled-ami)

## AMI 停用運作方式
<a name="how-disable-ami-works"></a>

**警告**  
停用 AMI 會移除其所有啟動權限。

**停用 AMI 時：**
+ AMI 的狀態會變更為 `disabled`。
+ 無法共用已停用的 AMI。如果 AMI 為公有或先前被共用，則會將其設為私有。如果 AMI 與 AWS 帳戶、組織或組織單位共用，則會失去對已停用 AMI 的存取權。
+ 依預設，已停用的 AMI 不會出現在 [https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeImages.html](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeImages.html) API 呼叫中。
+ 已停用的 AMI 不會出現在**我所擁有**主控台篩選條件下。若要尋找已停用的 AMI，請使用**已停用的映像**主控台篩選條件。
+ 對於 EC2 主控台中的執行個體啟動，不可選擇已停用的 AMI。例如，在啟動執行個體精靈中或建立啟動範本時，已停用的 AMI 不會出現在 AMI 目錄中。
+ 啟動服務 (例如啟動範本和 Auto Scaling 群組) 可以繼續參考已停用的 AMI。從已停用的 AMI 中進行後續執行個體啟動將會失敗，因此建議您更新啟動範本和 Auto Scaling 群組以僅參考可用的 AMI。
+ 先前使用隨後被停用的 AMI 來啟動的 EC2 執行個體不會受到影響，而且可以停止、啟動和重新啟動。
+ 您無法刪除與已停用的 AMI 相關聯的快照。嘗試刪除關聯的快照會導致`snapshot is currently in use`錯誤。

**重新啟用 AMI 時：**
+ AMI 的狀態會變更為 `available`，而且可用來啟動執行個體。
+ 可以共用 AMI。
+ 由於停用 AMI 而無法對其進行存取的AWS 帳戶、組織和組織單位不會自動重新獲得存取權，但可以再次與他們共用 AMI。

## 成本
<a name="ami-disable-costs"></a>

當您停用 AMI 時，不會刪除 AMI。如果 AMI 是 EBS 後端 AMI，您會繼續支付 AMI 的 EBS 快照。如果想要保留 AMI，可以透過封存快照來降低儲存成本。如需詳細資訊，請參閱「Amazon EBS 使用者指南」**中的[檔案 Amazon EBS 快照](https://docs.aws.amazon.com/ebs/latest/userguide/snapshot-archive.html)。如果不想保留 AMI 及其快照，必須取消註冊 AMI 並刪除快照。如需詳細資訊，請參閱[取消註冊 AMI](deregister-ami.md)。

## 先決條件
<a name="ami-disable-prerequisites"></a>

若要停用或重新啟用 AMI，您必須是 AMI 的擁有者。

## 所需的 IAM 許可
<a name="ami-disable-iam-permissions"></a>

若要停用和重新啟用 AMI，您必須具有下列 IAM 許可：
+ `ec2:DisableImage`
+ `ec2:EnableImage`

## 停用 AMI
<a name="disable-ami"></a>

您可以使用 EC2 主控台或 AWS Command Line Interface () 停用 AMI AWS CLI。您必須是 AMI 擁有者才能執行此程序。

------
#### [ Console ]

**停用 AMI**

1. 前往 [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/) 開啟 Amazon EC2 主控台。

1. 在左側導覽窗格中選擇 **AMI**。

1. 從篩選條件列中，選擇 **Owned by me** (由我擁有)。

1. 選取 AMI，然後選擇**動作**、**停用 AMI**。可以選取多個 AMI，以便一次停用。

1. 在**停用 AMI** 視窗中，選擇**停用 AMI**。

------
#### [ AWS CLI ]

**停用 AMI**  
使用下列 [https://docs.aws.amazon.com/cli/latest/reference/ec2/disable-image.html](https://docs.aws.amazon.com/cli/latest/reference/ec2/disable-image.html) 命令。

```
aws ec2 disable-image --image-id {{ami-0abcdef1234567890}}
```

------
#### [ PowerShell ]

**停用 AMI**  
使用 [Disable-EC2Image](https://docs.aws.amazon.com/powershell/latest/reference/items/Disable-EC2Image.html) cmdlet。

```
Disable-EC2Image -ImageId {{ami-0abcdef1234567890}}
```

------

## 描述已停用的 AMI
<a name="describe-disabled-ami"></a>

可以使用 EC2 主控台或 AWS CLI來檢視已停用的 AMI。

您必須是 AMI 擁有者，才能檢視已停用的 AMI。因為已停用的 AMI 會設為私有，如果您不是擁有者，就無法檢視已停用的 AMI。

------
#### [ Console ]

**若要檢視已停用的 AMI**

1. 前往 [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/) 開啟 Amazon EC2 主控台。

1. 在左側導覽窗格中選擇 **AMI**。

1. 從篩選列中，選擇**已停用的映像**。  
![已停用映像篩選條件。](http://docs.aws.amazon.com/zh_tw/AWSEC2/latest/UserGuide/images/ami-filter-by-disabled-images.png)

------
#### [ AWS CLI ]

依預設，當您描述所有 AMI 時，停用的 AMI 不會包括在結果中。如需在結果中包括停用的 AMI，請指定 `--include-disabled` 選項。若已停用 AMI，AMI 的 `State` 欄位為 `disabled`。

**如需在為帳戶描述所有 AMI 時包括已停用的 AMI**  
使用下列 [https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-images.html](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-images.html) 命令。

```
aws ec2 describe-images \
    --owners {{123456789012}} \
    --include-disabled
```

**如需列出帳戶的停用 AMI**  
使用下列 [https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-images.html](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-images.html) 命令。

```
aws ec2 describe-images \
    --owners self \
    --include-disabled \
    --filters Name=state,Values=disabled \
    --query Images[].ImageId \
    --output text
```

以下為範例輸出。

```
ami-0abcdef1234567890
```

**如需描述 AMI 的狀態**  
使用下列 [https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-images.html](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-images.html) 命令。若輸出中不存在 `DeprecationTime`，不會棄用 AMI，或者將其設定為在未來日期棄用。

```
aws ec2 describe-images \
    --image-ids {{ami-0abcdef1234567890}} \
    --query Images[].State \
    --output text
```

以下為範例輸出。

```
disabled
```

------
#### [ PowerShell ]

依預設，當您描述所有 AMI 時，停用的 AMI 不會包括在結果中。若要在結果中包含已停用的 AMI，請指定 `-IncludeDisabled` 參數。若已停用 AMI，AMI 的 `State` 欄位為 `disabled`。

**如需列出帳戶的停用 AMI**  
使用 [Get-EC2Image](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2Image.html) cmdlet。

```
(Get-EC2Image `
    -Owner self `
    -IncludeDisabled $true | Where-Object {$_.State -eq "disabled"}).ImageId
```

以下為範例輸出。

```
ami-0abcdef1234567890
```

**如需描述 AMI 的狀態**  
使用 [Get-EC2Image](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2Image.html) cmdlet。

```
(Get-EC2Image -ImageId {{ami-0abcdef1234567890}}).State.Value
```

以下為範例輸出。

```
disabled
```

------

## 重新啟用已停用的 AMI
<a name="re-enable-a-disabled-ami"></a>

可以重新啟用已停用的 AMI。您必須是 AMI 擁有者才能執行此程序。

------
#### [ Console ]

**重新啟用已停用的 AMI**

1. 前往 [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/) 開啟 Amazon EC2 主控台。

1. 在左側導覽窗格中選擇 **AMI**。

1. 從篩選列中，選擇**已停用的映像**。

1. 選取 AMI，然後選擇**動作**、**啟用 AMI**。可以選取多個 AMI，一次重新啟用多個 AMI。

1. 在**啟用 AMI** 視窗中，選擇**啟用**。

------
#### [ AWS CLI ]

**重新啟用已停用的 AMI**  
使用下列 [https://docs.aws.amazon.com/cli/latest/reference/ec2/enable-image.html](https://docs.aws.amazon.com/cli/latest/reference/ec2/enable-image.html) 命令。

```
aws ec2 enable-image --image-id {{ami-0abcdef1234567890}}
```

------
#### [ PowerShell ]

**重新啟用已停用的 AMI**  
使用 [Enable-EC2Image](https://docs.aws.amazon.com/powershell/latest/reference/items/Enable-EC2Image.html) cmdlet。

```
Enable-EC2Image -ImageId {{ami-0abcdef1234567890}}
```

------