跳到主要内容

高级设置

高级设置包含了虚拟机的底层调优参数和开发者选项,这些配置通常用于解决特定的兼容性问题或满足特殊的性能需求。普通用户建议保持默认配置,仅在明确了解这些选项的用途及可能影响时再进行修改。

谨慎操作

高级设置仅建议在调试或排查启动问题时使用,普通情况下请保持默认配置。错误的配置可能导致虚拟机无法启动或运行异常。

配置概览​

开发者选项​

启动时冻结 CPU​

CPU 冻结功能使虚拟机在启动后立即将 vCPU 置于暂停状态,等待调试器连接后再继续执行。

工作原理:

适用场景:

  • 内核开发调试
  • 固件启动问题排查
  • 引导过程分析
  • 低级别问题诊断

APIC(高级可编程中断控制器)​

APIC 是现代处理器中的中断管理组件,负责处理硬件中断和处理器间通信。

状态说明适用场景
启用使用 APIC 中断控制器默认推荐,所有现代系统
禁用使用传统 PIC 中断控制器仅用于排查非常早期的启动兼容性问题
建议

常规虚拟机建议保持启用 APIC。仅在排查非常早期的启动兼容性问题时再尝试关闭。

PAE(物理地址扩展)​

PAE 允许 32 位处理器访问超过 4GB 的物理内存空间。

状态说明适用场景
启用启用 PAE 支持32 位系统需要访问大内存
禁用禁用 PAE 支持64 位系统或小内存场景

技术原理:

说明

主要用于 x86 老系统或 32 位来宾的大内存兼容场景。非 x86 架构会自动忽略该设置。

RTC 时钟配置​

RTC(Real-Time Clock)配置控制虚拟机的实时时钟行为,包括时区偏移和起始日期。

RTC 偏移​

RTC 偏移用于调整虚拟机时钟与宿主机时钟的差异,常用于需要特定时区的场景。

偏移类型说明示例
UTC使用协调世界时Linux 系统默认
本地时间使用宿主机本地时间Windows 系统默认
自定义偏移手动设置偏移量特殊时区需求

RTC 起始日期​

RTC 起始日期设置虚拟机时钟的初始值,某些旧版操作系统或软件可能需要特定的日期范围。

使用场景:

  • 旧版软件的日期兼容性测试
  • 特定时区的环境模拟
  • 时间敏感型应用的调试

QEMU Guest Agent​

QEMU Guest Agent 是运行在虚拟机内部的守护进程,提供宿主机与虚拟机之间的通信通道。

功能概览​

核心特性​

特性说明用途
文件系统冻结冻结虚拟机文件系统创建一致性快照
文件系统解冻解冻虚拟机文件系统快照完成后恢复
网络信息获取虚拟机 IP 地址显示真实网络配置
用户密码设置虚拟机用户密码密码重置功能
关机/重启优雅关闭或重启虚拟机安全的系统操作

配置选项​

选项说明默认值
启用 Agent是否使用 Guest Agent禁用
超时时间Agent 响应超时30 秒
特性开关控制可用的 Agent 功能按需启用

安装要求​

  • Linux:安装 qemu-guest-agent 包
  • Windows:安装 VirtIO 驱动中的 Guest Agent 组件
注意

Guest Agent 需要在虚拟机内部安装并运行相应的服务才能正常工作。未安装 Agent 的虚拟机将回退到传统方式执行操作。

动态内存后端​

动态内存后端控制虚拟机内存动态调整的实现方式,不同后端在性能和兼容性上各有特点。

后端对比​

后端原理粒度兼容性性能
气球调度(balloon)页面级别的内存回收4KB 页广泛略有开销
弹性内存(virtio_mem)块级别的内存管理128-512MB较新系统更高效

选择弹性内存后端时会自动关闭自动气球(二者互斥);启用气球调度要求虚拟机 XML 中已存在 virtio-balloon 设备(否则需关机后重新配置)。动态内存配置存在兼容状态机:legacy_static(静态内存,未启用动态)、dynamic(动态已生效)、pending_apply(配置已保存待应用,通常因虚拟机处于运行态或后端不兼容,需关机应用)。

气球调度详解​

弹性内存详解​

配置参数​

参数说明范围
最大内存动态内存上限基础内存 ~ 64GB
最小内存动态内存下限512MB ~ 基础内存
调整步长每次调整的内存大小由后端决定

SMBIOS 配置​

SMBIOS(System Management BIOS)是主板和系统信息的标准接口,某些软件会根据 SMBIOS 信息进行授权或功能判断。

Type 1 信息​

SMBIOS Type 1 包含系统制造商、产品名称、版本和序列号等信息。

字段说明用途
制造商系统制造商名称软件授权识别
产品名称系统产品名称硬件识别
版本系统版本号版本判断
序列号系统序列号唯一标识
UUID通用唯一标识符软件授权绑定

使用场景​

  • 软件授权:某些软件根据 SMBIOS 信息进行授权验证
  • 虚拟化检测:部分软件会检测是否运行在虚拟化环境中
  • 品牌定制:为虚拟机设置特定的品牌信息
建议

除非有特殊需求,建议保持 SMBIOS 默认配置。修改 SMBIOS 信息可能影响某些软件的正常运行。

Domain XML 编辑​

Domain XML 是 libvirt 定义虚拟机的 XML 配置文件,包含了虚拟机的所有硬件和配置信息。

XML 结构​

<domain type='kvm'>
<name>vm-name</name>
<memory unit='GiB'>4</memory>
<vcpu placement='static'>2</vcpu>
<os>
<type arch='x86_64'>hvm</type>
</os>
<devices>
<disk type='file' device='disk'>
<!-- 磁盘配置 -->
</disk>
<interface type='network'>
<!-- 网络配置 -->
</interface>
</devices>
</domain>

编辑权限​

用户类型权限说明
管理员完全编辑权限可直接修改 XML
普通用户无编辑权限仅可查看
风险警告

直接编辑 Domain XML 可能导致:

  • 虚拟机无法启动
  • 配置不一致
  • 数据丢失

仅建议高级用户在充分了解 libvirt XML 规范的情况下使用此功能。

显示设备配置​

显示设备决定了虚拟机的图形输出能力和性能,不同设备适用于不同的使用场景。

设备类型​

设备性能兼容性适用场景
VirtIO最佳需要驱动Linux 系统推荐
VGA良好广泛兼容Windows 安装阶段
VMVGA良好VMware 兼容嵌套虚拟化
QXL优秀SPICE 协议SPICE 连接
Cirrus一般最佳兼容旧系统

选择建议​

首次重启模式​

首次重启模式控制 Windows 模板克隆后首次重启的行为,用于解决某些模板的兼容性问题。

模式选项​

模式说明适用场景
正常重启由虚拟机内部触发重启默认模式
宿主冷启动由宿主机强制重启虚拟机Sysprep/OOBE 黑屏问题
LTSC 模板

Windows LTSC 等模板在 Sysprep/OOBE 自动重启后可能出现黑屏,此时可选择"宿主冷启动"模式解决此问题。