Abilitazione dell'accesso alla console seriale per le immagini Linux importate

È possibile configurare l'immagine Linux personalizzata per supportare le connessioni utilizzando la funzione console seriale nel servizio di computazione.

Per ulteriori informazioni sulle connessioni alla console seriale e sui passi per la risoluzione dei problemi se l'immagine presenta problemi di connettività di rete dopo l'avvio, vedere Risoluzione dei problemi delle istanze mediante la connessione alla console delle istanze.

La connessione alla console seriale in Oracle Cloud Infrastructure utilizza la prima porta seriale, ttyS0, sulla VM. Il boot loader e il sistema operativo devono essere configurati in modo da utilizzare ttyS0 come terminale della console sia per l'input che per l'output.

Importante

Per Arm, la prima porta seriale è ttyAMA0.

Configurazione del boot loader

La procedura per configurare il boot loader affinché utilizzi ttyS0 come terminale della console sia per l'input che per l'output dipende dalla versione di GRUB. Eseguire il comando seguente sul sistema operativo per determinare la versione di GRUB:

grub-install --version
Se si riceve un errore che indica 'grub' not found, eseguire il comando seguente:
grub2-install --version

Se il numero di versione restituito è 2.x, eseguire la procedura per configurare GRUB 2. Per le versioni precedenti, eseguire le operazioni per configurare GRUB.

Per configurare GRUB2, procedere come segue
  1. Eseguire il comando seguente per modificare il file di configurazione di GRUB:

    sudo vi /etc/default/grub
  2. Verificare che il file di configurazione contenga quanto segue:

    GRUB_SERIAL_COMMAND="serial --unit=0 --speed=115200"
    							GRUB_TERMINAL="serial console"
  3. Aggiungere quanto segue alla fine della riga GRUB_CMDLINE_LINUX:

    console=tty1 console=ttyS0,115200

    Se GRUB_CMDLINE_LINUX non esiste, creare questa riga utilizzando GRUB_CMDLINE_OUTPUT come modello.

  4. Rigenerare la configurazione GRUB2 utilizzando il comando seguente:

    sudo grub2-mkconfig -o /boot/grub2/grub.cfg

    Se si dispone di una versione beta di GRUB 2, utilizzare questo comando:

    sudo grub-mkconfig -o /boot/grub/grub.cfg
Per eseguire la configurazione di GRUB
  1. Eseguire il comando seguente per modificare il file di configurazione di GRUB:

    sudo vi /boot/grub/grub.conf
  2. Aggiungere quanto segue dopo la riga contenente timeout:

    serial --unit=0 --speed=115200
    terminal --timeout=5 serial console
  3. Aggiungere quanto segue a ogni riga kernel:

    console=tty1 console=ttyS0,115200

Configurazione del sistema Operativo

È possibile che il sistema operativo sia già configurato per utilizzare ttyS0 come terminale console sia per l'input che per l'output. Per verificare, eseguire il comando seguente:

sudo vi /etc/securetty

Controllare la presenza del file ttyS0. Se non viene visualizzato, aggiungere ttyS0 alla fine del file.

Convalida dell'accesso alla console seriale

Dopo aver completato i passi per abilitare l'accesso alla console seriale all'immagine, è necessario verificare che l'accesso alla console seriale funzioni eseguendo il test dell'immagine con la console seriale nell'ambiente di virtualizzazione. Per ulteriori informazioni, consultare la documentazione relativa all'ambiente di virtualizzazione. Verificare che l'output di boot sia visualizzato nell'output della console seriale e che vi sia un input interattivo dopo il boot dell'immagine.

Risoluzione dei problemi della console seriale

Se nella console seriale non viene visualizzato alcun output, verificare nella configurazione dell'ambiente di virtualizzazione che il dispositivo della console seriale sia collegato alla prima porta seriale.

Se la console seriale visualizza l'output, ma non è disponibile alcun input interattivo, verificare che sia presente un processo terminale in ascolto sulla porta ttyS0 (o ttyAMA0 per Arm). A tale scopo, eseguire il comando seguente:

ps aux | grep ttyS0

Questo comando dovrebbe generare un processo di terminale in ascolto sulla porta ttyS0. Ad esempio, se il sistema utilizza getty, verrà visualizzato il seguente output:

/sbin/getty ttyS0

Se non viene visualizzato questo output, è probabile che un processo di login non sia configurato per la connessione alla console seriale. Per risolvere questo problema, abilitare le impostazioni di inizializzazione, in modo che un processo terminale sia in ascolto su ttyS0 all'avvio.

Ad esempio, se il sistema utilizza getty, aggiungere il seguente comando alle impostazioni di inizializzazione da eseguire all'avvio del sistema:

getty -L 9600 ttyS0 vt102

I passaggi per farlo variano a seconda del sistema operativo, quindi consulta la documentazione per il sistema operativo dell'immagine.

Modifica delle voci di GRUB con i tasti

È possibile modificare le voci di GRUB usando solo tasti.
Tasti di scelta per modificare le voci di GRUB
Tasto Descrizione
Ctrl+f Passare a destra di un carattere.
Ctrl+b Passare a sinistra di un carattere.
Ctrl+a Sposta all'inizio della linea.
Ctrl+e Sposta a fine linea.
Ctrl+p Sposta in alto di un carattere.
Ctrl+n Sposta in basso di un carattere.
Ctrl+d Eliminare il carattere sotto il cursore.
Ctrl+H Eliminare il carattere a sinistra del cursore.
Ctrl+K Eliminare i caratteri dal cursore alla fine della riga.
Ctrl+u Eliminare i caratteri dal cursore all'inizio della riga.
Ctrl+Y Riportare il testo eliminato dal cursore.