

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Impostare la modalità di avvio di un'AMI Amazon EC2
<a name="set-ami-boot-mode"></a>

Per impostazione predefinita, un’AMI eredita la modalità di avvio dell’istanza EC2 utilizzata per creare l’AMI. Ad esempio, se crei un’AMI da un’istanza EC2 in esecuzione su BIOS legacy, la modalità di avvio della nuova AMI è `legacy-bios`. Se crei un’AMI da un’istanza EC2 con modalità di avvio `uefi-preferred`, la modalità di avvio della nuova AMI sarà `uefi-preferred`.

Quando registri un’AMI, puoi impostare la modalità di avvio dell’AMI su `uefi`, `legacy-bios` o `uefi-preferred`.

Quando la modalità di avvio dell'AMI è impostata su `uefi-preferred`, l'istanza si avvia come segue: 
+ Per i tipi di istanza che supportano sia UEFI che BIOS legacy (ad esempio `m5.large`), l'istanza si avvia utilizzando UEFI.
+ Per i tipi di istanza che supportano solo BIOS legacy (ad esempio `m4.large`), l'istanza si avvia utilizzando tale modalità.

Se imposti la modalità di avvio dell'AMI su `uefi-preferred`, il sistema operativo deve essere in grado di supportare sia la modalità UEFI che BIOS legacy.

Per convertire un’istanza esistente basata su BIOS Legacy in UEFI o un’istanza esistente basata su UEFI in BIOS Legacy, devi innanzitutto modificare il volume e il sistema operativo dell’istanza di modo che supportino la modalità di avvio selezionata. Creare quindi uno snapshot del volume. Infine, crea un’AMI dallo snapshot

**Considerazioni**
+ L'impostazione del parametro della modalità di avvio dell'AMI non configura automaticamente il sistema operativo per la modalità di avvio specificata. Devi prima apportare le modifiche adeguate al volume e al sistema operativo dell’istanza per supportare l’avvio tramite la modalità di avvio selezionata. Altrimenti, l’AMI risultante non è utilizzabile. Ad esempio, se state convertendo un'istanza di Windows basata su BIOS legacy in UEFI, potete utilizzare lo strumento [MBR2GPT](https://learn.microsoft.com/en-us/windows/deployment/mbr-to-gpt) di Microsoft per convertire il disco di sistema da MBR a GPT. Le modifiche necessarie sono specifiche del sistema operativo. Per ulteriori informazioni, consulta il manuale del sistema operativo in uso.
+ Non puoi utilizzare il comando [https://docs.aws.amazon.com/cli/latest/reference/ec2/register-image.html](https://docs.aws.amazon.com/cli/latest/reference/ec2/register-image.html) o il cmdlet [https://docs.aws.amazon.com/powershell/latest/reference/items/Register-EC2Image.html](https://docs.aws.amazon.com/powershell/latest/reference/items/Register-EC2Image.html) per creare un’AMI che supporti sia [NitroTPM](nitrotpm.md) che UEFI Preferred.
+ Alcune funzionalità, ad esempio l'avvio protetto UEFI, sono disponibili solo per le istanze con modalità di avvio UEFI. Se usi il parametro della modalità di avvio dell’AMI `uefi-preferred` con un tipo di istanza che non supporta UEFI, l’istanza viene avviata come BIOS legacy, con la funzionalità dipendente da UEFI disabilitata. Se fai affidamento sulla disponibilità di una funzionalità dipendente da UEFI, imposta il parametro della modalità di avvio dell'AMI su `uefi`.

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

**Per impostare la modalità di avvio di un’AMI**

1. Apporta le modifiche adeguate al volume e al sistema operativo dell'istanza per supportare l'avvio tramite la modalità di avvio selezionata. Le modifiche necessarie sono specifiche del sistema operativo. Per ulteriori informazioni, consulta il manuale del sistema operativo in uso.
**avvertimento**  
Se non si esegue questa fase, l'AMI non sarà utilizzabile.

1. Per trovare l'ID del volume dell'istanza, utilizza il comando [https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-instances.html](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-instances.html). Verrà creato uno snapshot del volume nella fase successiva.

   ```
   aws ec2 describe-instances \
       --instance-ids i-1234567890abcdef0 \
       --query Reservations[].Instances[].BlockDeviceMappings
   ```

   Di seguito è riportato un output di esempio.

   ```
   [
       [
           {
               "DeviceName": "/dev/xvda",
               "Ebs": {
                   "AttachTime": "2024-07-11T01:05:51+00:00",
                   "DeleteOnTermination": true,
                   "Status": "attached",
                   "VolumeId": "vol-1234567890abcdef0"
               }
           }
       ]
   ]
   ```

1. Per creare uno snapshot del volume, utilizza il comando [https://docs.aws.amazon.com/cli/latest/reference/ec2/create-snapshot.html](https://docs.aws.amazon.com/cli/latest/reference/ec2/create-snapshot.html). Utilizza l'ID del volume della fase precedente.

   ```
   aws ec2 create-snapshot \
       --volume-id vol-01234567890abcdef \
       --description "my snapshot"
   ```

   Di seguito è riportato un output di esempio.

   ```
   {
       "Description": "my snapshot",
       "Encrypted": false,
       "OwnerId": "123456789012",
       "Progress": "",
       "SnapshotId": "snap-0abcdef1234567890",
       "StartTime": "",
       "State": "pending",
       "VolumeId": "vol-01234567890abcdef",
       "VolumeSize": 30,
       "Tags": []
   }
   ```

1. Attendi che lo stato dello snapshot sia `completed` prima di passare alla fase successiva. Per ottenere lo stato dello snapshot, utilizza il comando [https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-snapshots.html](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-snapshots.html) con l’ID dello snapshot ottenuto nel passaggio precedente.

   ```
   aws ec2 describe-snapshots \
       --snapshot-ids snap-0abcdef1234567890 \
       --query Snapshots[].State \
       --output text
   ```

   Di seguito è riportato un output di esempio.

   ```
   completed
   ```

1. Per creare una nuova AMI, utilizza il comando [https://docs.aws.amazon.com/cli/latest/reference/ec2/register-image.html](https://docs.aws.amazon.com/cli/latest/reference/ec2/register-image.html). Utilizza il valore di `SnapshotId` dall’output di **CreateSnapshot**.
   + Per impostare la modalità di avvio su UEFI, aggiungi il parametro `--boot-mode` con valore `uefi`.

     ```
     aws ec2 register-image \
        --description "my image" \
        --name "my-image" \
        --block-device-mappings "DeviceName=/dev/sda1,Ebs={SnapshotId=snap-0abcdef1234567890,DeleteOnTermination=true}" \
        --root-device-name /dev/sda1 \
        --virtualization-type hvm \
        --ena-support \
        --boot-mode uefi
     ```
   + Per impostare la modalità di avvio su `uefi-preferred`, imposta il valore di `--boot-mode` su `uefi-preferred`

     ```
     aws ec2 register-image \
        --description "my description" \
        --name "my-image" \
        --block-device-mappings "DeviceName=/dev/sda1,Ebs={SnapshotId=snap-0abcdef1234567890,DeleteOnTermination=true}" \
        --root-device-name /dev/sda1 \
        --virtualization-type hvm \
        --ena-support \
        --boot-mode uefi-preferred
     ```

1. (Facoltativo) Per verificare che l’AMI appena creata disponga della modalità di avvio specificata, utilizza il comando [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 \
       --image-id ami-1234567890abcdef0 \
       --query Images[].BootMode \
       --output text
   ```

   Di seguito è riportato un output di esempio.

   ```
   uefi
   ```

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

**Per impostare la modalità di avvio di un’AMI**

1. Apporta le modifiche adeguate al volume e al sistema operativo dell'istanza per supportare l'avvio tramite la modalità di avvio selezionata. Le modifiche necessarie sono specifiche del sistema operativo. Per ulteriori informazioni, consulta il manuale del sistema operativo in uso.
**avvertimento**  
Se non si esegue questa fase, l'AMI non sarà utilizzabile.

1. Per trovare l’ID del volume dell’istanza, utilizza il cmdlet [https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2Instance.html](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2Instance.html).

   ```
   (Get-EC2Instance `
       -InstanceId i-1234567890abcdef0).Instances.BlockDeviceMappings.Ebs
   ```

   Di seguito è riportato un output di esempio.

   ```
   AssociatedResource  : 
   AttachTime          : 7/11/2024 1:05:51 AM
   DeleteOnTermination : True
   Operator            : 
   Status              : attached
   VolumeId            : vol-01234567890abcdef
   ```

1. Per creare uno snapshot del volume, utilizza il cmdlet [https://docs.aws.amazon.com/powershell/latest/reference/items/New-EC2Snapshot.html](https://docs.aws.amazon.com/powershell/latest/reference/items/New-EC2Snapshot.html). Utilizza l'ID del volume della fase precedente.

   ```
   New-EC2Snapshot `
       -VolumeId vol-01234567890abcdef `
       -Description "my snapshot"
   ```

   Di seguito è riportato un output di esempio.

   ```
   AvailabilityZone          : 
   Description               : my snapshot
   Encrypted                 : False
   FullSnapshotSizeInBytes   : 0
   KmsKeyId                  : 
   OwnerId                   : 123456789012
   RestoreExpiryTime         : 
   SnapshotId                : snap-0abcdef1234567890
   SseType                   : 
   StartTime                 : 4/25/2025 6:08:59 PM
   State                     : pending
   StateMessage              : 
   VolumeId                  : vol-01234567890abcdef
   VolumeSize                : 30
   ```

1. Attendi che lo stato dello snapshot sia `completed` prima di passare alla fase successiva. Per ottenere lo stato dello snapshot, utilizza il cmdlet [https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2Snapshot.html](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2Snapshot.html) con l’ID dello snapshot del passaggio precedente.

   ```
   (Get-EC2Snapshot `
       -SnapshotId snap-0abcdef1234567890).State.Value
   ```

   Di seguito è riportato un output di esempio.

   ```
   completed
   ```

1. Per creare una nuova AMI, utilizza il cmdlet [https://docs.aws.amazon.com/powershell/latest/reference/items/Register-EC2Image.html](https://docs.aws.amazon.com/powershell/latest/reference/items/Register-EC2Image.html). Utilizza il valore di `SnapshotId` dall’output di **New-EC2Snapshot**.
   + Per impostare la modalità di avvio su UEFI, aggiungi il parametro `-BootMode` con valore `uefi`.

     ```
     $block = @{SnapshotId=snap-0abcdef1234567890}
     Register-EC2Image ` 
        -Description "my image" `
        -Name "my-image" `
        -BlockDeviceMapping @{DeviceName="/dev/xvda";Ebs=$block} `
        -RootDeviceName /dev/xvda `
        -EnaSupport $true `
        -BootMode uefi
     ```
   + Per impostare la modalità di avvio su `uefi-preferred`, imposta il valore di `-BootMode` su `uefi-preferred`

     ```
     $block = @{SnapshotId=snap-0abcdef1234567890}
     Register-EC2Image ` 
        -Description "my image" `
        -Name "my-image" `
        -BlockDeviceMapping @{DeviceName="/dev/xvda";Ebs=$block} `
        -RootDeviceName /dev/xvda `
        -EnaSupport $true `
        -BootMode uefi-preferred
     ```

1. (Facoltativo) Per verificare che l’AMI appena creata disponga della modalità di avvio specificata, utilizza il cmdlet [https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2Image.html](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2Image.html).

   ```
   (Get-EC2Image `
       -ImageId ami-1234567890abcdef0).BootMode.Value
   ```

   Di seguito è riportato un output di esempio.

   ```
   uefi
   ```

------