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

Puoi 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 le connessioni della 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 per utilizzare ttyS0 come terminale della console sia per l'input che per l'output.

Importante

Per Arm, la prima porta seriale è ttyAMA0.

Configurazione del loader di boot

La procedura per configurare il boot loader in modo che utilizzi ttyS0 come terminale della console sia per gli input che per gli output dipende dalla versione di GRUB. Per determinare la versione di GRUB, eseguire il comando seguente sul sistema operativo:

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 la procedura per configurare GRUB.

Per configurare GRUB2
  1. Per modificare il file di configurazione di GRUB, eseguire il comando seguente:

    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 configurare GRUB
  1. Per modificare il file di configurazione di GRUB, eseguire il comando seguente:

    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 ciascuna riga kernel:

    console=tty1 console=ttyS0,115200

Configurazione del sistema operativo.

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

sudo vi /etc/securetty

Controllare il file per ttyS0. Se non viene visualizzato, aggiungere ttyS0 alla fine del file.

Convalida dell'accesso alla console seriale

Dopo aver completato la procedura per abilitare l'accesso della 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 eseguire questa operazione, consultare la documentazione relativa all'ambiente di virtualizzazione. Verificare che l'output di boot venga visualizzato nell'output della console seriale e che sia presente un input interattivo dopo l'avvio dell'immagine.

Risoluzione dei problemi relativi alla console seriale

Se sulla console seriale non viene visualizzato alcun output, verificare nella configurazione dell'ambiente di virtualizzazione che il dispositivo 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 seguente comando:

ps aux | grep ttyS0

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

/sbin/getty ttyS0

Se l'output non viene visualizzato, è 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 sul 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 mediante i tasti

È possibile modificare le voci di GRUB usando solo i tasti digitati.
Tasti per la modifica delle voci di GRUB
Tasto descrizione
Ctrl+f Sposta il cursore a destra.
Ctrl+b Spostarsi verso sinistra di un carattere.
Ctrl+a Sposta a inizio riga.
Ctrl+e Sposta a fine riga.
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 Riporta il testo eliminato al cursore.