Я использую KVM на хосте Ubuntu 10.04. Гостевой ОС также является Ubuntu 10.04.
Я пытаюсь подключиться к гостю с помощью команды console. Похоже, я могу установить соединение, но я не получаю вывод.
$ sudo virsh -c qemu:///system console guest1
Connected to domain guest1
Escape character is ^]
(NOTHING HERE)
^]
$
У меня нет настроенного «последовательного» устройства, но у меня есть эти «консольные» устройства.
<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>
Достаточно ли этого для консоли или мне нужно последовательное устройство?
Что мне нужно сделать, чтобы заставить работать консоль KVM?
Я абсолютно уверен, что действительно необходимо настроить гостя для использования последовательной консоли. Вам нужны три вещи для этого для работы:
дайте гостю виртуальное последовательное устройство типа pty
(например, путем включения одного virt-manager
страница информации о vm)
скажите ядру использовать это для своего вывода путем добавления параметров начальной загрузки как serial=tty0 console=ttyS0,115200n8
в GRUB_CMDLINE_LINUX
в /etc/default/grub
; затем выполненный sudo update-grub
(дополнительно) поместите getty на ttyS0 так, чтобы Вы получили приглашение ко входу в систему
См. http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=507650 для больше.
Здесь это очень хорошо объяснено:
Последовательная консоль для сервера Ubuntu 10.04 KVM гостей
Я только что столкнулся с этим.
Вот что у меня есть в XML-конфигурации на хосте (под управлением 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>
Мне также пришлось добавить следующее в /etc/default/grub.conf в ВМ (добавьте к команде «kernel»):
kernel ..... serial=tty0 console=ttyS0,115200n8
Наконец, я защитил ttyS0, добавив «/ etc / securetty», чтобы разрешить здесь вход с правами root
vi /etc/securetty
ttyS0
Возможно, вам понадобится и ваши настройки getty (как описано в другом ответе)
Надеюсь, это поможет
Одна из возможностей заключается в том, что на вашей виртуальной машине не настроена последовательная консоль.
virsh dumpxml guest1
покажет, настроена ли последовательная консоль или нет. Там должно быть что-то похожее как
<serial type='pty'>
<target port='0'/>
</serial>