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


9

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

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

$ 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控制台正常工作,我需要做什么?

Answers:


7

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

  1. 为访客提供一种类型的虚拟串行设备pty(例如,在virt-managervm info页面中添加一个)

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

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

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



1

一种可能是您的虚拟机未配置串行控制台。

virsh dumpxml guest1

将显示是否配置了串行控制台。应该有类似的东西

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

谢谢@txwikinger。我用的一些输出更新了我的问题virsh dumpxml。我没有看到串行设备,但是看到了一些控制台设备。你知道这是否足够?
Stefan Lasiewski 2010年


1

我刚遇到这个。

这是主机(运行KVM)上XML配置中的内容:

<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>

我还必须在VM的/etc/default/grub.conf中添加以下内容(附加到“内核”命令):

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

最后,我通过添加“ / etc / securetty”来从此处启用root登录来保护ttyS0。

vi /etc/securetty
ttyS0

您可能还需要弄乱您的getty设置(如另一个答案所述)

希望这可以帮助

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.