Quelle raison pourrait empêcher la sortie de la console de "virsh -c qemu: /// console système guest1"?

9

J'exécute KVM sur un hôte Ubuntu 10.04. L'OS invité est également Ubuntu 10.04.

J'essaie de me connecter à l'invité à l'aide de la commande «console». Il semble que je puisse établir une connexion, mais je n'obtiens aucune sortie.

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

Je n'ai pas de périphérique «série» configuré, mais j'ai ces périphériques «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>

Sont-ils suffisants pour une console ou ai-je également besoin d'un périphérique série?

Que dois-je faire pour que la console KVM fonctionne?

Stefan Lasiewski
la source

Réponses:

7

Je suis presque sûr que vous devez configurer l'invité pour utiliser une console série. Vous avez besoin de trois choses pour que cela fonctionne:

  1. donner à l'invité un périphérique série virtuel de type pty(par exemple en en ajoutant un dans la virt-managerpage d'informations de vm)

  2. dire au noyau de l'utiliser pour sa sortie, en ajoutant des paramètres de démarrage comme serial=tty0 console=ttyS0,115200n8dans GRUB_CMDLINE_LINUXin /etc/default/grub; puis exécutezsudo update-grub

  3. (facultatif) mettez un getty sur ttyS0 pour obtenir une invite de connexion

Voir http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=507650 pour en savoir plus.

poolie
la source
1
Et pour ajouter un getty à ttyS0, j'ai suivi les instructions ici: ubuntuforums.org/showpost.php?p=9610421&postcount=7
Stefan Lasiewski
1

Une possibilité est que votre machine virtuelle ne dispose pas d'une console série configurée.

virsh dumpxml guest1

montrera s'il y a une console série configurée ou non. Il devrait y avoir quelque chose de similaire

<serial type='pty'>
<target port='0'/>
</serial>
txwikinger
la source
Merci @txwikinger. J'ai mis à jour ma question avec une sortie de virsh dumpxml. Je ne vois pas de périphérique série, mais je vois certains périphériques de console. Savez-vous si cela suffit?
Stefan Lasiewski,
1

Je suis juste tombé sur ça.

Voici ce que j'ai dans la configuration XML sur l'hôte (exécutant 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>

J'ai également dû ajouter ce qui suit dans /etc/default/grub.conf dans la machine virtuelle (ajouter à la commande "kernel"):

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

Enfin, j'ai sécurisé le ttyS0 en ajoutant "/ etc / securetty" pour activer la connexion root à partir d'ici

vi /etc/securetty
ttyS0

Vous devrez peut-être également nettoyer vos paramètres Getty (comme décrit par l'autre réponse)

J'espère que cela t'aides

shreddd
la source