it-swarm.it

Quale motivo potrebbe impedire l'output della console da "virsh -c qemu: /// system console guest1"?

Sto eseguendo KVM su un host Ubuntu 10.04. Il sistema operativo guest è anche Ubuntu 10.04.

Sto tentando di connettermi al guest usando il comando 'console'. Sembra che posso stabilire una connessione, ma non ottengo alcun output.

$ Sudo virsh -c qemu:///system console guest1
Connected to domain guest1
Escape character is ^]
(NOTHING HERE)
^]
$

Non ho un dispositivo 'seriale' configurato, ma ho questi dispositivi 'console'.

<console type='pty' tty='/dev/pts/2'>
  <source path='/dev/pts/2'/>
  <target port='0'/>
</console>
<console type='pty' tty='/dev/pts/2'>
  <source path='/dev/pts/2'/>
  <target port='0'/>
</console>

Sono sufficienti per una console o ho bisogno anche di un dispositivo seriale?

Cosa devo fare per far funzionare la console KVM?

9

Sono abbastanza sicuro che devi configurare il guest per usare una console seriale. Per far funzionare tutto ciò sono necessarie tre cose:

  1. fornire all'ospite un dispositivo seriale virtuale di tipo pty (ad esempio aggiungendo uno nella pagina di informazioni virt-manager vm)

  2. dire al kernel di usarlo per il suo output, aggiungendo parametri di avvio come serial=tty0 console=ttyS0,115200n8 in GRUB_CMDLINE_LINUX in /etc/default/grub; quindi esegui Sudo update-grub

  3. (facoltativo) metti un getty su ttyS in modo da ottenere un prompt di accesso

Vedi http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=50765 per ulteriori informazioni.

7
poolie

Mi sono appena imbattuto in questo.

Ecco cosa ho nella configurazione XML sull'host (che esegue KVM):

<serial type='pty'>
  <source path='/dev/pts/0'/>
  <target port='0'/>
</serial>
<console type='pty' tty='/dev/pts/0'>
  <source path='/dev/pts/0'/>
  <target port='0'/>
</console>

Ho anche dovuto aggiungere quanto segue in /etc/default/grub.conf nel VM (aggiungere al comando "kernel"):

kernel ..... serial=tty0 console=ttyS0,115200n8

Alla fine ho protetto ttyS0 aggiungendo "/ etc/securetty" per abilitare il login root da qui

vi /etc/securetty
ttyS0

Potrebbe essere necessario confondere con le impostazioni di getty (come descritto dall'altra risposta)

Spero che sia di aiuto

1
shreddd
1
user9784

Una possibilità è che la tua macchina virtuale non abbia una console seriale configurata.

virsh dumpxml guest1

mostrerà se c'è una console seriale configurata o meno. Dovrebbe esserci qualcosa di simile come

<serial type='pty'>
<target port='0'/>
</serial>
1
txwikinger