图形设备允许与来宾操作系统进行图形交互。
访客通常会配置帧缓冲区或文本控制台,以允许与管理员进行交互。
...
<devices>
<graphics type='sdl' display=':0.0'/>
<graphics type='vnc' port='5904' sharePolicy='allow-exclusive'>
<listen type='address' address='1.2.3.4'/>
</graphics>
<graphics type='rdp' autoport='yes' multiUser='yes' />
<graphics type='desktop' fullscreen='yes'/>
<graphics type='spice'>
<listen type='network' network='rednet'/>
</graphics>
</devices>
...
graphics
graphics具有一个强制性 type 属性,它取值sdl,vnc, spice,rdp或desktop:
- sdl
这将在主机桌面上显示一个窗口,它可以包含3个可选参数:
一个display显示器使用的xauth属性,一个认证标识符的属性,以及一个可选的fullscreen属性接受值 yes或no。
- vnc
port属性指定TCP端口号(使用-1作为指示应自动分配的旧语法)。
autoport属性是用于指示要使用的TCP端口的自动分配的新的首选语法。
passwd属性以明文形式提供VNC密码。
如果passwd属性设置为空字符串,则禁用VNC访问。
keymap属性指定要使用的键盘映射。可以通过给出时间戳passwdValidTo ='2010-04-09T15:51:00'假定为UTC来设置密码的有效性限制。
该connected属性允许在密码更改期间控制连接的客户端。
-- ** -- ** --
可选
sharePolicy属性指定vnc服务器显示共享策略:
1.allow-exclusive允许客户通过放弃其他连接来请求独占访问。并行连接多个客户端需要所有客户端请求共享会话(vncviewer:-Shared switch)。这是默认值。
2.force-shared禁用独占客户端访问,每个连接都必须指定vncviewer的共享切换。
3.ignore无条件的连接。
-- ** -- ** --
VNC WebSocket功能,websocket属性可以用来指定侦听的端口(-1意味着自动分配,autoport由于安全原因而不起作用)。 - spice
port属性指定TCP端口号(使用-1作为指示应自动分配的旧语法),同时tlsPort给出替代的安全端口号。
autoport 属性是用于指示所需端口号的自动分配的新的首选语法。
passwd 属性以明文形式提供SPICE密码。
如果 passwd属性设置为空字符串,则禁用SPICE访问。
keymap属性指定要使用的键盘映射。可以通过给出时间戳passwdValidTo ='2010-04-09T15:51:00'假定为UTC来设置密码的有效性限制。
连接属性允许在密码更改期间控制连接的客户端。SPICE接受保持客户端连接,断开连接客户端,和不能更改密码失败。
defaultMode属性设置默认的信道安全策略,有效值是secure,insecure,和默认的any
当SPICE配置正常和TLS安全的TCP端口时,可能需要限制哪些通道可以在端口上运行。 这是通过在主要<graphics>元素内添加一个或多个<channel>元素并将mode属性设置为secure或insecure来实现的。 设置mode属性将覆盖defaultMode属性设置的默认值。有效的名称包括main,display,inputs,cursor,playback,record; smartcard ; 和usbredir。
<graphics type='spice' port='-1' tlsPort='-1' autoport='yes'>
<channel name='main' mode='secure'/>
<channel name='record' mode='insecure'/>
<image compression='auto_glz'/>
<streaming mode='filter'/>
<clipboard copypaste='no'/>
<mouse mode='client'/>
<filetransfer enable='no'/>
<gl enable='yes' rendernode='/dev/dri/by-path/pci-0000:00:02.0-render'/>
</graphics>
-
Spice支持音频,图像和流媒体的可变压缩设置。这些设置是通过访问compression 属性中的所有下列元素:image以设置图像压缩(接受auto_glz,auto_lz,quic,glz,lz,off),jpeg用于JPEG压缩图像通过WAN(接受auto,never,always),zlib用于配置苍白图像压缩(接受auto,never,always),并playback 为启用音频流压缩(接受on或 off)。
流模式通过设定streaming元件,设置其mode属性之一 filter,all或off。
复制和粘贴功能(通过Spice代理)由clipboard元素设置 。它是默认启用的,可以通过设置copypaste属性来 禁用no。
鼠标模式由mouse元素设置,将其mode属性设置 为server或之一 client。如果没有指定模式,将使用默认的qemu(客户端模式)。
文件传输功能(通过Spice代理)使用filetransfer元素设置 。它是默认启用的,可以通过设置enable属性来 禁用no。
Spice可能会使用OpenGL提供加速的服务器端渲染。您可以gl通过设置enable 属性来显式地启用或禁用OpenGL支持。。
默认情况下,QEMU将选择第一个可用的GPU DRM渲染节点。您可以指定一个DRM渲染节点路径来代替。(仅限QEMU) -
rdp
port属性指定TCP端口号(使用-1作为指示应自动分配的旧语法)。
autoport属性是用于指示要使用的TCP端口的自动分配的新的首选语法。在VirtualBox驱动程序中,当虚拟机启动时,将使虚拟机管理程序从3389-3689范围内选择可用的端口。所选的端口将被反映在port 属性中。
multiUser属性是一个布尔值,用于决定是否允许多个同时连接到虚拟机。
replaceUser属性是一个布尔值,用于确定当新客户端以单连接模式连接时是否必须删除现有连接,并且必须由VRDP服务器建立新连接。 -
desktop
此值现在是为VirtualBox域保留的。它在主机桌面上显示一个窗口,类似于“sdl”,但使用VirtualBox查看器。就像“sdl”一样,它接受可选的属性display和 fullscreen。
图形设备使用一个 <listen>来设置设备应该监听客户端的位置。它有一个type指定监听类型的强制属性 。只有vnc, spice和rdp支持<listen> 元素。可用的类型是:
- address
通知图形设备使用address属性中指定的地址 ,该地址将包含IP地址或主机名(通过DNS查询将解析为IP地址)以进行侦听。
address从1.3.5开始,为了使用配置文件中的地址, 可以省略该属性。
为了向后兼容, 该address属性被复制为元素中的listen 属性graphics。如果两者都提供,他们必须是平等的。
<graphics type='vnc' port='6210' autoport='no' listen='0.0.0.0'>
<listen type='address' address='0.0.0.0'/> #可以省略
</graphics>
- network
这用于network 从libvirt配置的网络列表中指定属性中的现有网络。将检查指定的网络配置以确定合适的监听地址,并将地址存储在address 属性中的实时XML中。
<graphics type='spice' autoport='yes'>
<listen type='address'/>
<image compression='off'/>
</graphics>
-
socket(仅限QEMU)
这种侦听类型告诉图形服务器在unix套接字上侦听。属性socket包含unix套接字的路径。如果省略这个属性,libvirt会为你生成这个路径。由图形类型vnc和spic支持。
为了vnc图形向后兼容元素socket中第一个listen元素的属性被复制为socket属性graphics 。如果graphics元素包含一个socket 属性,所有listen元素都被忽略。 -
none(仅限QEMU)
这个监听类型没有任何其他的属性。Libvirt支持通过我们的API virDomainOpenGraphics()和virDomainOpenGraphicsFD()传递文件描述符。如果使用这个类型并且图形设备不在任何地方监听,则不允许其他监听类型。您需要使用两个API中的一个将FD传递给QEMU才能连接到此图形设备。由图形类型vnc和spic支持。
网友评论