Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

20.16.15. 客户机虚拟机接口

字符设备将自身作为以下类型之一向虚拟客户机呈现:
要设置并行端口,请使用管理工具对域 XML 进行以下更改

图 20.60. 客户机虚拟机接口 Parallel 端口


...
  <devices>
    <parallel type='pty'>
      <source path='/dev/pts/2'/>
      <target port='0'/>
    </parallel>
  </devices>
  ...
<目标> 可以有一个 port 属性,用于指定端口号。端口从 0 开始。通常有 0、1 或 2 个并行端口。
要设置串行端口,请使用管理工具对域 XML 进行以下更改:

图 20.61. 客户机虚拟机接口串口


  ...
  <devices>
    <serial type='pty'>
      <source path='/dev/pts/3'/>
      <target port='0'/>
    </serial>
  </devices>
  ...
<目标> 可以有一个 port 属性,用于指定端口号。端口从 0 开始。通常有 0、1 或 2 串行端口。还有一个可选的 type 属性,它的值有两个选择,一个是 a isa-serial,另一个是 usb-serial。如果缺少 type,则将默认使用 isa-serial。对于 usb-serial,带有 type='usb' 的可选子元素 <地址> 可将设备绑定到特定的控制器,如上面所述。
<console> 元素用于表示交互式控制台。根据所使用的客户机虚拟机类型,控制台可能是半虚拟化设备,或者根据以下规则,这些控制台可能是串行设备的克隆:
  • 如果没有设置 targetType 属性,则默认 设备类型 取决于虚拟机监控程序的规则。当重新查询到 libvirt 中的 XML 时,将添加默认类型。对于完全虚拟化的 guest 虚拟机,默认设备类型通常是串行端口。
  • 如果 targetType 属性是 serial 的,如果不存在 <serial> 元素,则 console 元素将复制到 <serial> 元素中。如果 <serial> 元素已存在,则 console 元素将被忽略。
  • 如果 targetType 属性不是 串行 的,它将被正常处理。
  • 只有第一个 <控制台> 元素可以使用 serialtargetType。辅助控制台必须全部为泛虚拟化。
  • 在 s390 中,控制台元素可以使用 sclp 或 sclplm(在线模式)的 targetType。SCLP 是 s390 的原生控制台类型。SCLP 控制台没有关联控制器。
在以下示例中,guest 虚拟机中会公开一个 virtio 控制台设备,作为 /dev/hvc[0-7](详情请参阅 http://fedoraproject.org/wiki/Features/VirtioSerial):

图 20.62. 客户机虚拟机接口 - virtio 控制台设备


  ...
  <devices>
    <console type='pty'>
      <source path='/dev/pts/4'/>
      <target port='0'/>
    </console>

    <!-- KVM virtio console -->
    <console type='pty'>
      <source path='/dev/pts/5'/>
      <target type='virtio' port='0'/>
    </console>
  </devices>
  ...

  ...
  <devices>
    <!-- KVM s390 sclp console -->
    <console type='pty'>
      <source path='/dev/pts/1'/>
      <target type='sclp' port='0'/>
    </console>
  </devices>
  ...
如果控制台以串行端口显示,则 <目标> 元素具有与串行端口相同的属性。通常只有一个控制台。