我在 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 控制台正常工作,我需要做什么?
我相当确定您确实需要配置来宾以使用串行控制台。为此,您需要三件事:
给来宾一个类型的虚拟串行设备
pty
(例如通过在virt-manager
vm 信息页面中添加一个)告诉内核将其用于其输出,通过添加引导参数如
serial=tty0 console=ttyS0,115200n8
intoGRUB_CMDLINE_LINUX
in/etc/default/grub
; 然后运行sudo update-grub
(可选)在 ttyS0 上放置一个 getty,以便您获得登录提示
有关更多信息,请参阅http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=507650。
一种可能是您的虚拟机没有配置串行控制台。
将显示是否配置了串行控制台。应该有类似的东西
这里解释得很好:
Ubuntu server 10.04 KVM guest 的串行控制台
我刚碰到这个。
这是我在主机上的 XML 配置中的内容(运行 KVM):
我还必须在 VM 的 /etc/default/grub.conf 中添加以下内容(附加到“内核”命令):
最后,我通过添加“/etc/securetty”来保护 ttyS0 以从此处启用 root 登录
您可能还需要使用您的 getty 设置(如其他答案所述)
希望这可以帮助