如何为KVM guest虚拟机启用Virsh控制台访问
时间:2020-03-21 11:44:20 来源:igfitidea点击:
创建KVM guest虚拟机后,我可以通过SSH,VNC客户端,Virt-viewer,Virt-manager和Cockpit Web控制台等访问它们。
但是我无法使用“ virsh console”命令访问它们。
对于那些想知道的人,“ virsh console”命令用于从主机系统连接到客户机的控制台。
查看KVM文档之后,我发现我们应该在KVM guest虚拟机系统中启用串行控制台,以便为KVM guest虚拟机启用virsh控制台访问。
我的Ubuntu 20.04系统中运行的是CentOS 8虚拟机。
$virsh list Id Name State ------------------------ 1 centos8 running
我尝试使用以下命令访问CentOS 8 VM的控制台:
$virsh console centos8
我得到这个输出:
Connected to domain centos8 Escape character is ^]
它说我已连接到centos8 VM,但没有看到VM的控制台。
我无法越过这个屏幕。
它一直显示该空白屏幕,直到我按CTRL +]键手动退出为止。
如果我们曾经遇到过这种情况,请按照以下说明启用串行控制台服务。
为KVM guest虚拟机启用Virsh控制台访问
就像我已经提到的那样,我们必须在来宾计算机中添加一个串行控制台,以便从主机系统访问其virsh控制台。
为此,请通过SSH或者Virt-manager或者Cockpit登录到来宾计算机,然后运行以下命令来启用和启动串行控制台:
# systemctl enable Hyman@theitroad
# systemctl start Hyman@theitroad
请注意,以上命令应在KVM来宾系统(虚拟机)中运行,而不是在KVM主机中运行。
我们已在来宾中启用了串行控制台界面。
我们可以通过查看VM的配置XML文件来验证它:
$virsh edit centos8
如果启用了串行控制台,我们将看到以下几行:
<serial type='pty'> <target type='isa-serial' port='0'> <model name='isa-serial' </target> </serial> <console type='pty'> <target type='serial' port='0' </console>
关闭XML文件,然后从客户机退出。
现在,使用以下命令从主机启动来宾系统的virsh控制台:
$virsh console centos8
我们将收到以下消息:
Connected to domain centos8 Escape character is ^]
再次按Enter,然后输入用户名和密码以连接到访客计算机:
我们现在位于来宾计算机的控制台中。
开始使用它。
我们可以随时通过按“ CTRL +]”键切换回主机控制台。