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
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 si converte un'istanza Windows basata su BIOS Legacy in UEFI, è possibile utilizzare lo strumento MBR2GPT 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 register-image o il cmdlet Register-EC2Image per creare un’AMI che supporti sia NitroTPM 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
-
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.
Se non si esegue questa fase, l'AMI non sarà utilizzabile.
-
Per trovare l'ID del volume dell'istanza, utilizza il comando describe-instances. 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"
}
}
]
]
-
Per creare uno snapshot del volume, utilizza il comando create-snapshot. 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": []
}
-
Attendi che lo stato dello snapshot sia completed prima di passare alla fase successiva. Per ottenere lo stato dello snapshot, utilizza il comando describe-snapshots 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
-
Per creare una nuova AMI, utilizza il comando register-image. 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
-
(Facoltativo) Per verificare che l’AMI appena creata disponga della modalità di avvio specificata, utilizza il comando describe-images.
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
-
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.
Se non si esegue questa fase, l'AMI non sarà utilizzabile.
-
Per trovare l’ID del volume dell’istanza, utilizza il cmdlet Get-EC2Instance.
(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
-
Per creare uno snapshot del volume, utilizza il cmdlet New-EC2Snapshot. 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
-
Attendi che lo stato dello snapshot sia completed prima di passare alla fase successiva. Per ottenere lo stato dello snapshot, utilizza il cmdlet Get-EC2Snapshot con l’ID dello snapshot del passaggio precedente.
(Get-EC2Snapshot `
-SnapshotId snap-0abcdef1234567890).State.Value
Di seguito è riportato un output di esempio.
completed
-
Per creare una nuova AMI, utilizza il cmdlet Register-EC2Image. 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
-
(Facoltativo) Per verificare che l’AMI appena creata disponga della modalità di avvio specificata, utilizza il cmdlet Get-EC2Image.
(Get-EC2Image `
-ImageId ami-1234567890abcdef0).BootMode.Value
Di seguito è riportato un output di esempio.
uefi