KVM的HVM虚拟机使用virsh console 方式连接


  在之前的文章中http://blog.csdn.net/dobell/article/details/9003421,给出了XEN console 连接HVM的方式,那么在KVM下,如何使用libvirt库的virsh console 连接HVM呢?其实同样很简单

    其实要实现,并不难。首先,我们需要在 virsh启动的虚拟机XML文件 kvm201.xml 中插入以下标签

 

<span style="font-size:14px;"><devices>
<serial type='pty'  tty='/dev/pts/4'>
  <target port='0'/>
</serial>
<console type='pty'>
  <target type='serial' port='0'/>
</console>
</devices></span>

注意,serial和console 标签必须添加在devcies 标签内,否则 libvirt库无法识别要添加console设备

然后我们启动虚拟机,virsh create  kvm201.xml,在虚拟机kvm201的/boot/grub/grub.cfg文件中添加console,如下图所示

如果是grub2系统,请修改/etc/default/grub文件,

GRUB_CMDLINE_LINUX=" console=tty0 console=ttyS0",然后update-grub

如果串口输入时,希望能看到并控制grub,那么还得加上下面这段话

GRUB_TERMINAL=serial
GRUB_SERIAL_COMMAND="serial --unit=0 --speed=115200 --word=8 --parity=no --stop=1"

这段表示grub本身支持串口输出

光是这样无法用console登录,只能看到启动信息,所以我们还要添加 ttyS0的ssh启动。 在 虚拟机中的 /etc/init/ttyS0.conf 添加如下信息

接着 重启虚拟机,reboot,virsh console  kmv201,发现可以连接了

 * Starting ACPI daemon                                                  [ OK ]
 * Starting regular background program processing daemon                 [ OK ]
 * Starting deferred execution scheduler                                 [ OK ]
 * Starting CPU interrupts balancing daemon                              [ OK ]
 * Starting crash report submission daemon                               [ OK ]
apache2: Could not reliably determine the server's fully qualified domain name, using 192.168.188.201 for ServerName
                                                                         [ OK ]
 * Starting Tomcat servlet engine tomcat7                                [ OK ]
 * Checking battery state...                                             [ OK ]

Ubuntu 12.04.1 LTS kvm201 ttyS0

kvm201 login: root

猜你喜欢

转载自blog.csdn.net/w497629433/article/details/14442457