23.2. 操作系统引导
引导虚拟机的方法有多种,包括 BIOS 引导装载程序、主机物理机器引导加载程序、直接内核引导和容器引导。
23.2.1. BIOS Boot Loader
启动 BIOS 可用于支持完全虚拟化的虚拟机监控程序。在这种情况下,BIOS 具有引导顺序优先级(floppy、硬盘、CD-ROM、网络)决定从何处定位引导镜像。域 XML 的
<os>
部分包含以下信息:
图 23.2. BIOS 引导装载程序域 XML
... <os> <type>hvm</type> <boot dev='fd'/> <boot dev='hd'/> <boot dev='cdrom'/> <boot dev='network'/> <bootmenu enable='yes'/> <smbios mode='sysinfo'/> <bios useserial='yes' rebootTimeout='0'/> </os> ...
域 XML 的这一部分的组件如下:
元素 | 描述 |
---|---|
<type> | 指定要在客户机虚拟机上引导的操作系统类型。hvm 表示操作系统设计为在裸机上运行,需要完全虚拟化。Linux 指的是支持 KVM 管理程序客户机 ABI 的操作系统。另外有两个可选属性: arch 为虚拟化指定 CPU 架构,机器则 引用机器类型。如需更多信息,请参阅 libvirt 上游文档。 |
<boot> | 指定要考虑使用以下值之一的下一个引导设备:fd 、hd、 或 network 。boot 元素可以多次重复,以设置优先级引导设备以便尝试打开。同一类型的多个设备按照目标排序,同时保留总线顺序。定义域后,libvirt 返回的 XML 配置按排序顺序列出设备。进行排序后,第一个设备将标记为可引导。如需更多信息,请参阅 libvirt 上游文档。 |
<bootmenu> | 确定是否在 guest 虚拟机上启用交互式引导菜单提示。enable 属性可以是 yes ,也可以是 yes 。如果未指定,则使用虚拟机监控程序默认。 |
<smbios> | 决定在客户机虚拟机中如何查看 SMBIOS 信息。必须指定 mode 属性,如 模拟 (允许管理程序生成所有值)、host (所有 Block 0 和 Block 1,除了 UUID 外)或 sysinfo(从主机物理机器的 SMBIOS 值);v irConnectGetSysinfo 调用可用于查看要复制的值,或 sysinfo (使用 sysinfo 元素中的值)。如果未指定,则使用虚拟机监控程序的默认设置。 |
<bios> | 此元素具有属性 使用 可能值 yes 或 no 。属性启用或禁用 Serial Graphics Adapter,它允许用户在串行端口上看到 BIOS 信息。因此,需要定义串行端口。rebootTimeout 属性控制客户机虚拟机在引导失败时是否应重新启动的时间(根据 BIOS)。值设为 毫秒,最大为 65535 ;设置 -1 可禁用重新启动。 |