Risolvi i problemi della tua EC2 istanza Amazon utilizzando la console seriale EC2 - Amazon Elastic Compute Cloud

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à.

Risolvi i problemi della tua EC2 istanza Amazon utilizzando la console seriale EC2

Utilizzando EC2 Serial Console, puoi risolvere problemi di avvio, configurazione di rete e altri problemi collegandoti alla porta seriale dell'istanza.

Consulta le istruzioni relative al sistema operativo della tua istanza e allo strumento che hai configurato su di essa.

Prerequisiti

Prima di iniziare, assicurati di aver completato i prerequisiti, inclusa la configurazione dello strumento di risoluzione dei problemi scelto.

(Istanze Linux) Usa GRUB per risolvere i problemi della tua istanza

GNU GRUB (abbreviazione di GNU GRand Unified Bootloader, comunemente chiamato GRUB) è il boot loader predefinito per la maggior parte dei sistemi operativi Linux. Dal menu di GRUB, è possibile selezionare il kernel in cui avviare o modificare le voci del menu per cambiare il modo in cui il kernel verrà avviato. Ciò può essere utile durante la risoluzione dei problemi di un'istanza con esito negativo.

Il menu di GRUB viene visualizzato durante il processo di avvio. Il menu non è accessibile tramite SSH normale, ma è possibile accedervi tramite la console seriale. EC2

Puoi eseguire l'avvio in modalità utente singolo o in modalità emergenza. La modalità utente singolo avvierà il kernel con un runlevel inferiore. Ad esempio, potrebbe montare il filesystem ma non attivare la rete, dandoti la possibilità di eseguire la manutenzione necessaria per correggere l'istanza. La modalità di emergenza è simile alla modalità utente singolo tranne per il fatto che il kernel viene eseguito al runlevel più basso possibile.

Per eseguire l'avvio in modalità utente singolo
  1. Connettiti alla console seriale dell'istanza.

  2. Riavviare l'istanza utilizzando il comando seguente.

    [ec2-user ~]$ sudo reboot
  3. Durante il riavvio, quando appare il menu di GRUB, premi un tasto qualsiasi per interrompere il processo di avvio.

  4. Nel menu di GRUB, utilizzare i tasti freccia per selezionare il kernel in cui eseguire l'avvio, quindi premi e sulla tastiera.

  5. Utilizza i tasti freccia per posizionare il cursore sulla riga contenente il kernel. La riga inizia con linux o linux16 a seconda dell'AMI utilizzata per avviare l'istanza. Per Ubuntu, due righe iniziano con linux ed entrambe devono essere modificate nel passaggio successivo.

  6. Alla fine della riga, aggiungi la parola single.

    Di seguito è riportato un esempio per Amazon Linux 2.

    linux /boot/vmlinuz-4.14.193-149.317.amzn2.aarch64 root=UUID=d33f9c9a-\ dadd-4499-938d-ebbf42c3e499 ro console=tty0 console=ttyS0,115200n8 net.ifname\ s=0 biosdevname=0 nvme_core.io_timeout=4294967295 rd.emergency=poweroff rd.she\ ll=0 single
  7. Premi Ctrl+X per eseguire l‘avvio in modalità utente singolo.

  8. Al prompt di login, specifica il nome utente dell'utente con password configurato in precedenza quindi premi Invio.

  9. Al prompt di Password, specifica la password e premi Invio.

 

Per eseguire l'avvio in modalità di emergenza

Segui gli stessi passaggi della modalità utente singolo, ma al passaggio 6 aggiungi la parola emergency anziché single.

(Istanze Linux) Utilizzatelo SysRq per risolvere i problemi della vostra istanza

La chiave System Request (SysRq), a volte chiamata «magic SysRq «, può essere usata per inviare direttamente un comando al kernel, all'esterno di una shell, e il kernel risponderà, indipendentemente da ciò che sta facendo il kernel. Ad esempio, se l'istanza ha smesso di rispondere, puoi usare la SysRq chiave per dire al kernel di bloccarsi o riavviarsi. Per ulteriori informazioni, consulta Magic SysRq key in Wikipedia.

È possibile utilizzare SysRq i comandi nel client basato su browser EC2 Serial Console o in un client SSH. Il comando per inviare una richiesta di interruzione è diverso per ogni client.

Per utilizzarlo SysRq, scegli una delle seguenti procedure in base al client che stai utilizzando.

Browser-based client
Da utilizzare SysRq nella console seriale (client basato su browser)
  1. Connettiti alla console seriale dell'istanza.

  2. Per inviare una richiesta di interruzione, premi il tasto CTRL+0 (zero). Se la tastiera lo supporta, puoi inviare una richiesta di interruzione anche utilizzando il tasto Pausa o Interrompi.

    [ec2-user ~]$ CTRL+0
  3. Per impartire un SysRq comando, premi il tasto sulla tastiera che corrisponde al comando richiesto. Ad esempio, per visualizzare un elenco di SysRq comandi, premeteh.

    [ec2-user ~]$ h

    L'output del comando h è simile al seguente.

    [ 1169.389495] sysrq: HELP : loglevel(0-9) reboot(b) crash(c) terminate-all-tasks(e) memory-full-oom-kill(f) kill-all-tasks(i) thaw-filesystems (j) sak(k) show-backtrace-all-active-cpus(l) show-memory-usage(m) nice-all-RT-tasks(n) poweroff(o) show-registers(p) show-all-timers(q) unraw(r ) sync(s) show-task-states(t) unmount(u) show-blocked-tasks(w) dump-ftrace-buffer(z)
SSH client
Da utilizzare SysRq in un client SSH
  1. Connettiti alla console seriale dell'istanza.

  2. Per inviare una richiesta di interruzione, premi ~B (tilde, seguita da B maiuscolo).

    [ec2-user ~]$ ~B
  3. Per impartire un SysRq comando, premi il tasto sulla tastiera che corrisponde al comando richiesto. Ad esempio, per visualizzare un elenco di SysRq comandi, premeteh.

    [ec2-user ~]$ h

    L'output del comando h è simile al seguente.

    [ 1169.389495] sysrq: HELP : loglevel(0-9) reboot(b) crash(c) terminate-all-tasks(e) memory-full-oom-kill(f) kill-all-tasks(i) thaw-filesystems (j) sak(k) show-backtrace-all-active-cpus(l) show-memory-usage(m) nice-all-RT-tasks(n) poweroff(o) show-registers(p) show-all-timers(q) unraw(r ) sync(s) show-task-states(t) unmount(u) show-blocked-tasks(w) dump-ftrace-buffer(z)
    Nota

    Il comando utilizzato per l'invio di una richiesta di interruzione potrebbe essere diverso a seconda del client SSH che si sta utilizzando.

(Istanze Windows) Utilizza SAC per risolvere i problemi relativi all'istanza

La funzionalità Special Admin Console (SAC) di Windows consente di risolvere i problemi relativi a un'istanza di Windows. Collegandosi alla console seriale dell'istanza e utilizzando SAC, potrai interrompere il processo di avvio e avviare Windows in modalità provvisoria.

Nota

Se abiliti SAC su un'istanza, i EC2 servizi che si basano sul recupero della password non funzioneranno dalla console Amazon. EC2 Gli agenti di EC2 avvio di Windows su Amazon (EC2Config, EC2 Launch v1 e EC2 Launch v2) si affidano alla console seriale per eseguire varie attività. Queste attività non vengono eseguite correttamente quando si abilita SAC su un'istanza. Per ulteriori informazioni sugli agenti di EC2 lancio di Windows on Amazon, consultaConfigura la tua istanza Amazon EC2 Windows. Se abiliti SAC, puoi disabilitarlo in un secondo momento. Per ulteriori informazioni, consulta Disabilitazione di SAC e del menu di avvio.

Utilizzo di SAC

Per utilizzare SAC
  1. Collegarsi alla console seriale.

    Se SAC è abilitato sull'istanza, la console seriale visualizza il prompt SAC>.

    Prompt SAC visualizzato nella console seriale.
  2. Per visualizzare i comandi SAC, immettere ?, quindi premere Invio.

    Output previsto

    Inserisci un punto interrogativo per visualizzare i comandi SAC.
  3. Per creare un canale del prompt dei comandi (ad esempio cmd0001 o cmd0002), immettere cdm, quindi premere Invio.

  4. Per visualizzare il canale del prompt dei comandi, premere ESC, quindi premere SCHEDA.

    Output previsto

    Il canale del prompt dei comandi.
  5. Per cambiare canale, premere ESC+TAB+numero canale insieme. Ad esempio, per passare al canale cmd0002 (se è stato creato), premere ESC+TAB+2.

  6. Immettere le credenziali richieste dal canale del prompt dei comandi.

    Il prompt dei comandi richiede delle credenziali.

    Il prompt dei comandi è la stessa shell dei comandi completa che si ottiene su un desktop ma con l'eccezione che non consente la lettura di caratteri che erano già stati emessi.

    Una shell (interprete di comandi) completa.

PowerShell può essere utilizzato anche dal prompt dei comandi.

Tieni presente che potrebbe essere necessario impostare la preferenza di avanzamento sulla modalità silenziosa.

PowerShell all'interno del prompt dei comandi.

Utilizzo del menu di avvio

Se l'istanza ha il menu di avvio abilitato e viene riavviata dopo la connessione tramite SSH, il menu di avvio dovrebbe essere visualizzato come riportato di seguito.

Menu di avvio del prompt dei comandi.

Comandi del menu di avvio

INVIO

Avvia la voce selezionata del sistema operativo.

Tasto TAB

Passa al menu Strumenti.

ESC

Annulla e riavvia l'istanza.

ESC seguito da 8

Equivalente a premere F8. Mostra le opzioni avanzate per l'elemento selezionato.

Tasto ESC + freccia sinistra

Torna al menu di avvio iniziale.

Nota

Il tasto ESC da solo non consente di tornare al menu principale perché Windows resta in attesa di vedere se è in corso una sequenza di escape.

Opzioni di avvio avanzate.

Disabilitazione di SAC e del menu di avvio

Se abiliti SAC e il menu di avvio, puoi disabilitare queste funzionalità in un secondo momento.

Utilizza uno dei metodi seguenti per disabilitare SAC e il menu di avvio su un'istanza.

PowerShell
Per disabilitare SAC e il menu di avvio in un'istanza di Windows
  1. Connect all'istanza ed esegui i seguenti passaggi da una riga di PowerShell comando elevata.

  2. Per prima cosa disabilita il menu di avvio modificando il valore in no.

    bcdedit /set '{bootmgr}' displaybootmenu no
  3. Modifica quindi il valore in off per disabilitare SAC.

    bcdedit /ems '{current}' off
  4. Applica la configurazione aggiornata riavviando l'istanza.

    shutdown -r -t 0
Command prompt
Per disabilitare SAC e il menu di avvio in un'istanza di Windows
  1. Connettiti all'istanza ed esegui la procedura dal prompt dei comandi.

  2. Per prima cosa disabilita il menu di avvio modificando il valore in no.

    bcdedit /set {bootmgr} displaybootmenu no
  3. Modifica quindi il valore in off per disabilitare SAC.

    bcdedit /ems {current} off
  4. Applica la configurazione aggiornata riavviando l'istanza.

    shutdown -r -t 0