什么原因会阻止“virsh -c qemu:///system console guest1”的控制台输出?

Ste*_*ski 9 10.04 kvm virtualization

我在 Ubuntu 10.04 主机上运行 KVM。来宾操作系统也是 Ubuntu 10.04 。

我正在尝试使用“控制台”命令连接到来宾。看来我可以建立连接,但没有输出。

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

我没有配置“串行”设备,但我有这些“控制台”设备。

<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>
Run Code Online (Sandbox Code Playgroud)

这些对于控制台来说足够了吗,还是我还需要一个串行设备?

我需要做什么才能使 KVM 控制台工作?

poo*_*lie 7

我相当确定您确实需要配置来宾以使用串行控制台。您需要三件事才能使其发挥作用:

  1. 给来宾一个类型的虚拟串行设备pty(例如通过在virt-managervm info 页面中添加一个)

  2. 告诉内核来使用它的输出,通过添加启动参数一样serial=tty0 console=ttyS0,115200n8GRUB_CMDLINE_LINUX/etc/default/grub; 然后运行sudo update-grub

  3. (可选)在 ttyS0 上放置一个 getty以便您获得登录提示

有关更多信息,请参阅http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=507650