J'utilise KVM sur un hôte Ubuntu 10.04. Le système d'exploitation 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?
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:
attribuez à l'invité un périphérique série virtuel de type pty
(par exemple, en en ajoutant un dans la page d'informations virt-manager
vm)
indiquez au noyau de l'utiliser pour sa sortie en ajoutant des paramètres de démarrage tels que serial=tty0 console=ttyS0,115200n8
dans GRUB_CMDLINE_LINUX
dans /etc/default/grub
; puis exécutez Sudo update-grub
(facultatif) placez un getty sur ttyS pour obtenir une invite de connexion
Voir http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=50765 pour plus d'informations.
Je viens de courir dans cela.
Voici ce que j'ai dans la configuration XML sur l'hôte (sous 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 le VM (ajouter à la commande "kernel"):
kernel ..... serial=tty0 console=ttyS0,115200n8
Enfin, j'ai sécurisé le ttyS0 en ajoutant "/ etc/securetty" pour permettre la connexion root à partir d'ici
vi /etc/securetty
ttyS0
Vous devrez peut-être également modifier vos paramètres getty (comme décrit dans l’autre réponse).
J'espère que cela t'aides
Ici c'est très bien expliqué:
Une possibilité est que votre machine virtuelle ne possède pas de 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>