Come si collega un terminale seriale a un'istanza KVM?


12

Forse sto fraintendendo di cosa è capace KVM, ma la possibilità di aggiungere / rimuovere hardware sulla VM sembra implicare che posso aggiungere una porta seriale che poi funge da terminale.

Quindi, le mie domande sono:

  1. Quali sono le impostazioni migliori per la distribuzione di FreeBSD guest? (Ci sono molti!)
  2. Come posso accedere a detto terminale dal mio host Linux?

Risposte:


5

Ora posso rispondere alla mia domanda sulla base del commento di Stefan e dei due articoli collegati:

Ecco la soluzione:

  • Non è necessario modificare nulla a che fare con la configurazione dell'host, a condizione che abbia il dispositivo seriale predefinito che punta a pty.
  • Assicurarsi che il parametro di avvio per il vostro kernel ha aggiunto questo: serial=tty0 console=ttyS0,115200n8. Solitamente raggiunto modificando/boot/grub/menu.lst
  • Configura /etc/inittabe aggiungi la linea T0:S12345:respawn:/sbin/getty -hL ttyS0 115200 vt100per avviare un getty e darti il ​​prompt di accesso.

Posso confermare che funziona per me usando un sistema fedora (anche se ho dovuto impostare enforcing=0come parametro aggiuntivo perché il sistema in questione è fedora rawhide con SELinux MLS).

Penso che da lì probabilmente potrò capire come fare lo stesso con freebsd.

Grazie Stefan!


Penso che serial=tty0sia un errore e che doveva esserlo console=tty0. Non vedo un parametro "seriale" in nessuno dei documenti del kernel. Tuttavia, specificare più console (in questo caso, la console virtuale attiva più la console seriale) ha senso per me.
Mattdm,

2

In risposta a come configurare la tua macchina FreeBSD, ci sono due casi principali per ottenere seriale. Se stai installando FreeBSD solo con seriale, saranno necessarie le istruzioni seriali del bootloader. Se disponi già di una console e desideri semplicemente avere anche l'accesso seriale, segui le istruzioni seriali post-installazione.

Bootloader seriale

  • Premi 2alla schermata delle opzioni di avvio di FreeBSD per uscire dal prompt del caricatore
  • genere set console=comconsole
    • se perdi l'interattività a questo punto, controlla se la velocità di trasmissione virtuale tty è 9600
  • genere autoboot

Ciò dovrebbe consentire l'esecuzione del resto dell'installazione tramite l'interfaccia seriale. Se vuoi continuare ad avere accesso seriale dopo l'installazione di FreeBSD, prima di riavviare al termine dell'installazione dovrai passare al prompt dei comandi.

Seriale post-installazione

Alla console:

  • genere echo 'console="comconsole"' >> /boot/loader.conf
  • caricare /etc/ttysin vi
  • Modifica la riga che inizia con ttyu0 (potrebbe essere ttyd0 su altre versioni di FreeBSD)
    • Su quella riga cambia dialupin vt100e offinon
  • dopo il riavvio, il terminale seriale dovrebbe mostrare il processo di avvio e terminare con un prompt di accesso
    • Nota: l'impostazione console="comconsole"in /boot/loader.confpotrebbe far apparire i messaggi di avvio solo sull'interfaccia seriale. Basta modificare /etc/ttysse non si desidera che il registro di avvio sia seriale.

Riferimenti

http://www.freebsd.org/doc/handbook/serialconsole-setup.html

http://www.freebsd.org/doc/handbook/term.html


0

Bene, devi ovviamente emulare una porta seriale all'interno dell'emulatore e renderla accessibile sull'host. Il sistema operativo guest dovrebbe inserire qualcosa sulla sua "porta seriale hardware" come un prompt di accesso, ad esempio, getty_ps. Ora personalmente non ho dovuto usarlo in questo modo. Principalmente la porta seriale emulata sul sistema operativo guest viene utilizzata per il debug delle informazioni (Haiku la utilizza ancora per impostazione predefinita) e quindi viene catturata dall'emulatore (come VMware) come un semplice file di testo per rendere disponibili le informazioni di debug. Proverò qui per far funzionare qualcosa sulla console seriale emulata all'interno di qemu.


0

La risposta di OP funziona ma quando ho provato con il mio env (host Linux, client Linux)

  1. serial=tty0 non era necessario
  2. usando xterm invece vt100 /etc/inittabfunziona meglio (ottieni colore)
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.