目录
本章提供了配置 Oracle VM VirtualBox 虚拟机 (VM) 的详细步骤。有关 Oracle VM VirtualBox 的介绍以及如何运行您的第一个虚拟机的步骤,请参阅章节 1,《初步操作》。
在决定为客户机提供哪些虚拟硬件时,您有很大的自由度。使用虚拟硬件与主机系统或其他客户机通信。例如,您可以通过以下方式使用虚拟硬件:
让 Oracle VM VirtualBox 将 ISO CD-ROM 映像呈现给客户机系统,就像它是物理 CD-ROM 一样。
通过其虚拟网卡为客户机系统提供对物理网络的访问。
为主机系统、其他客户机和 Internet 上的计算机提供对客户机系统的访问。
由于 Oracle VM VirtualBox 旨在为 x86 系统提供通用的虚拟化环境,因此它可以运行任何类型的客户操作系统 (OS)。
支持以下客户操作系统平台:
完全支持的平台。这些客户操作系统平台符合 Oracle 高级支持的条件。请参阅表 3.1,“完全支持的客户操作系统”。
有限支持的平台。这些传统客户操作系统平台可与 Oracle VM VirtualBox 一起使用,但由于所涉技术的年代久远,仅符合有限支持的条件。因此,无法保证解决此类传统客户操作系统平台的客户问题。请参阅表 3.2,“有限支持的传统客户操作系统”。
表 3.1. 完全支持的客户操作系统
操作系统 | 评论 |
---|---|
Windows 11(64位) | 不支持内部预览版本 |
Windows 10(32位和64位) | 不支持内部预览版本 |
Windows 8 和 8.1(32位和64位) | |
Windows Server 2019(64位) | |
Windows Server 2016(64位) | |
Windows Server 2012 和 2012 R2(64位) | |
Solaris 11(32位和64位) | |
Solaris 10 8/11 更新 10 及更高版本(32位和64位) | |
Oracle Linux 8(64位) | 包括 Red Hat Enterprise Linux 8、CentOS 8 |
Oracle Linux 7(64位) | 包括 Red Hat Enterprise Linux 7、CentOS 7 |
Oracle Linux 6(32位和64位) | 包括 Red Hat Enterprise Linux 6、CentOS 6 |
Ubuntu 16.04 LTS (Xenial Xerus)(32位和64位) | |
Ubuntu 18.04 LTS (Bionic Beaver)(64位) | |
Ubuntu 20.04 LTS (Focal Fossa)(64位) | |
SUSE Linux Enterprise Server 15(64位) | |
SUSE Linux Enterprise Server 12(64位) |
表 3.2. 有限支持的传统客户操作系统
操作系统 | 评论 |
---|---|
Windows 7(32位和64位) | |
Windows Vista SP2 及更高版本(32位和64位) | |
Windows XP(32位) | |
Windows Vista(32位) | |
Windows Server 2008 和 2008 R2(32位和64位) | |
Windows Server 2003(32位和64位) | |
Oracle Linux 5(32位和64位) | 包括 Red Hat Enterprise Linux 5、CentOS 5 |
Ubuntu 14.04.5 LTS (Trusty Tahr)(32位和64位) | |
OS/2 Warp 4.5 |
Oracle VM VirtualBox 使您能够在受支持的主机硬件上安装和执行未经修改的 Mac OS X 客户机版本。请注意,此功能是实验性的,因此不受支持。
Oracle VM VirtualBox 是第一个提供 OS X 所期望的现代 PC 架构的产品,而无需竞争性虚拟化解决方案使用的任何修改。例如,一些竞争性解决方案对 Mac OS X 安装 DVD 进行修改,例如不同的引导加载程序和替换文件。
在尝试安装 Mac OS X 客户机之前,请注意以下重要问题:
Mac OS X 是商业许可软件,包含许可和技术限制,将其使用限制在特定硬件和使用场景。您必须理解并遵守这些限制。
特别是,苹果公司禁止在非苹果硬件上安装大多数版本的 Mac OS X。
这些许可限制也在技术层面上强制执行。Mac OS X 验证它是否在苹果硬件上运行。随苹果硬件附带的大多数 DVD 都会检查精确型号。这些限制未被 Oracle VM VirtualBox 规避,并且继续适用。
仅支持苹果公司已知和测试过的CPU。因此,如果您的 Intel CPU 比 Mac OS X 版本新,或者您拥有非 Intel CPU,您很可能会在启动期间遇到带有“不支持的 CPU”异常的内核崩溃。
确保您使用与您的苹果硬件附带的 Mac OS X DVD。
Mac OS X 安装程序期望硬盘是分区的。因此,安装程序不会向您提供分区选择。在成功安装软件之前,请从“工具”菜单启动“磁盘工具”并对硬盘进行分区。关闭“磁盘工具”并继续安装。
此外,Oracle VM VirtualBox 中的 Mac OS X 支持是一个实验性功能。请参阅章节 14,《已知限制》。
对于您打算在64位模式下使用的虚拟机,请务必启用I/O APIC。对于64位 Windows 虚拟机尤其如此。请参阅3.5.1 节,“主板选项卡”。对于64位 Windows 客户机,请确保虚拟机使用Intel 网卡设备,因为 AMD PCNet 网卡没有64位驱动程序支持。请参阅6.1 节,“虚拟网络硬件”。
如果您使用 VirtualBox 管理器的创建虚拟机向导,Oracle VM VirtualBox 会自动为每种选定的64位操作系统类型使用正确的设置。请参阅1.8 节,“创建您的第一个虚拟机”。
Oracle VM VirtualBox 可以自动安装客户操作系统。您只需提供安装介质和一些其他参数,例如默认用户的名称。
您可以通过以下方式执行无人值守客户机安装:
使用创建虚拟机向导。向导中的可选步骤使您能够配置无人值守安装。您可以指定客户操作系统的默认用户凭据,以及是否自动安装增强功能。请参阅1.8 节,“创建您的第一个虚拟机”。
在此步骤中,Oracle VM VirtualBox 扫描安装介质并更改某些参数,以确保作为 Oracle VM VirtualBox 上运行的客户机进行无缝安装。
使用VBoxManage 命令。3.2.1 节,“使用 VBoxManage 命令进行无人值守客户机安装”描述了如何为 Oracle Linux 客户机执行无人值守客户机安装。
当您首次启动已配置为无人值守安装的虚拟机时,客户操作系统安装将自动执行。
安装操作会更改启动设备顺序,首先启动虚拟硬盘,然后启动虚拟 DVD 驱动器。如果在自动安装之前虚拟硬盘为空,则虚拟机将从虚拟 DVD 驱动器启动并开始安装。
如果虚拟硬盘包含可启动操作系统,则安装操作将退出。在这种情况下,请在 BIOS 启动画面期间按 F12 手动更改启动设备顺序。
以下示例演示了如何为 Oracle Linux 虚拟机执行无人值守客户机安装。该示例使用各种VBoxManage 命令来准备客户虚拟机。然后使用VBoxManage unattended install 命令安装和配置客户操作系统。
创建虚拟机。
# VM="ol7-autoinstall" # VBoxManage list ostypes # VBoxManage createvm --name $VM --ostype "Oracle_64" --register
请注意以下事项:
$VM 变量表示虚拟机的名称。
VBoxManage list ostypes 命令列出了 Oracle VM VirtualBox 支持的客户操作系统,包括每个操作系统在VBoxManage 命令中使用的名称。
创建了一个 64 位 Oracle Linux 7 虚拟机并将其注册到 Oracle VM VirtualBox。
虚拟机具有唯一的 UUID。
生成了一个 XML 设置文件。
为虚拟机创建虚拟硬盘和存储设备。
# VBoxManage createhd --filename /VirtualBox/$VM/$VM.vdi --size 32768 # VBoxManage storagectl $VM --name "SATA Controller" --add sata --controller IntelAHCI # VBoxManage storageattach $VM --storagectl "SATA Controller" --port 0 --device 0 \ --type hdd --medium /VirtualBox/$VM/$VM.vdi # VBoxManage storagectl $VM --name "IDE Controller" --add ide # VBoxManage storageattach $VM --storagectl "IDE Controller" --port 0 --device 0 \ --type dvddrive --medium /u01/Software/OL/OracleLinux-R7-U6-Server-x86_64-dvd.iso
前面的命令执行以下操作:
创建一个 32768 MB 的虚拟硬盘。
创建一个 SATA 存储控制器并连接虚拟硬盘。
为虚拟 DVD 驱动器创建一个 IDE 存储控制器,并连接 Oracle Linux 安装 ISO。
(可选)配置虚拟机的一些设置。
# VBoxManage modifyvm $VM --ioapic on # VBoxManage modifyvm $VM --boot1 dvd --boot2 disk --boot3 none --boot4 none # VBoxManage modifyvm $VM --memory 8192 --vram 128
前面的命令执行以下操作:
为虚拟机主板启用 I/O APIC。
配置虚拟机的启动设备顺序。
为虚拟机分配 8192 MB RAM 和 128 MB 显存。
执行操作系统的无人值守安装。
# VBoxManage unattended install $VM \ --iso=/u01/Software/OL/OracleLinux-R7-U6-Server-x86_64-dvd.iso \ --user=login
--full-user-name=name
--passwordpassword
\ --install-additions --time-zone=CET
前面的命令执行以下操作:
指定 Oracle Linux ISO 作为安装 ISO。
为客户操作系统上的默认用户指定登录名、全名和登录密码。
请注意,指定的密码也用于客户机上的 root 用户帐户。
在虚拟机上安装增强功能。
将客户操作系统的时区设置为中欧时间 (CET)。
启动虚拟机。
此步骤完成无人值守安装过程。
# VBoxManage startvm $VM --type headless
虚拟机以无头模式启动,这意味着 VirtualBox 管理器窗口不会打开。
(可选)更新客户操作系统以使用最新的 Oracle Linux 软件包。
在客户虚拟机上,运行以下命令:
# yum update
Oracle VM VirtualBox 虚拟化主机几乎所有的硬件。根据虚拟机的配置,客户机将看到以下虚拟硬件:
输入设备。Oracle VM VirtualBox 可以模拟标准的 PS/2 键盘和鼠标。这些设备受大多数客户操作系统支持。
此外,Oracle VM VirtualBox 可以提供虚拟 USB 输入设备,以避免捕获鼠标和键盘,如1.9.2 节,“捕获和释放键盘与鼠标”所述。
显卡。Windows 客户机的默认 Oracle VM VirtualBox 显卡设备是 SVGA 设备。对于 Linux 客户机,默认显卡设备模拟 VMware SVGA 显卡设备。请参阅3.6.1 节,“屏幕选项卡”。
对于传统客户操作系统,可以使用 VGA 兼容显卡设备。
存储。Oracle VM VirtualBox 模拟最常见的硬盘控制器类型。请参阅5.1 节,“硬盘控制器”。虽然仅支持其中一个控制器本身就足以满足 Oracle VM VirtualBox 的需求,但为了与其他虚拟机管理程序兼容,需要多种存储适配器。Windows 对其引导设备非常挑剔,如果存储控制器不同,则在虚拟机管理程序之间迁移虚拟机将非常困难或不可能。
网络。请参阅6.1 节,“虚拟网络硬件”。
USB。Oracle VM VirtualBox 模拟这些类型的 USB 主机控制器:xHCI、EHCI 和 OHCI。虽然 xHCI 处理所有 USB 传输速度,但某些传统客户操作系统可能不支持 xHCI。请注意,对于某些传统 Windows 客户机,必须安装第三方驱动程序才能支持 xHCI。
传统客户操作系统通常支持 OHCI 和 EHCI。需要这两个控制器,因为 OHCI 仅处理 USB 低速和全速设备(USB 1.x 和 2.0),而 EHCI 仅处理高速设备(仅 USB 2.0)。
模拟的 USB 控制器不直接与主机上的设备通信。相反,它们通过虚拟 USB 层进行通信,该层抽象了 USB 协议并允许使用远程 USB 设备。
音频。请参阅3.8 节,“音频设置”。
在“设置”窗口的“常规”下,您可以配置虚拟机的最基本方面,例如内存和基本硬件。以下选项卡可用。
在“常规”设置类别的“基本”选项卡中,您可以找到以下设置:
名称:虚拟机的名称,如主 VirtualBox 管理器窗口中的虚拟机列表所示。Oracle VM VirtualBox 也使用此名称保存虚拟机的配置文件。如果您更改名称,Oracle VM VirtualBox 也会重命名这些文件。因此,您只能使用主机操作系统允许的文件名字符。
请注意,在内部,Oracle VM VirtualBox 使用唯一标识符 (UUID) 来标识虚拟机。您可以使用VBoxManage 命令显示这些标识符。
类型:虚拟机的客户操作系统类型。这与在“新建虚拟机”向导中指定的设置相同。请参阅1.8 节,“创建您的第一个虚拟机”。
虽然新创建虚拟机的默认设置取决于所选的操作系统类型,但以后更改类型对虚拟机设置没有影响。此值纯粹是信息性和装饰性的。
版本:虚拟机的客户操作系统版本。这与在“新建虚拟机”向导中指定的设置相同。请参阅1.8 节,“创建您的第一个虚拟机”。
“高级”选项卡中提供了以下设置:
快照文件夹:默认情况下,Oracle VM VirtualBox 将快照数据与您的其他 Oracle VM VirtualBox 配置数据一起保存。请参阅10.1 节,“Oracle VM VirtualBox 存储其文件的位置”。通过此设置,您可以为每个虚拟机指定任何其他文件夹。
共享剪贴板:您可以在此处选择客户操作系统的剪贴板是否应与主机共享。如果选择“双向”,则 Oracle VM VirtualBox 将始终确保两个剪贴板包含相同的数据。如果选择“主机到客户机”或“客户机到主机”,则 Oracle VM VirtualBox 将始终仅在一个方向复制剪贴板数据。
剪贴板共享要求安装 Oracle VM VirtualBox 增强功能。在这种情况下,此设置无效。请参阅章节 4,《增强功能》。
出于安全原因,共享剪贴板默认禁用。此设置可以随时使用虚拟机“设备”菜单中的“共享剪贴板”菜单项进行更改。
拖放:此设置启用拖放支持。从主机或客户机中选择一个对象(例如文件),并直接在客户机或主机上复制或打开它。虚拟机的多种拖放模式允许限制任一方向的访问。
要使拖放功能正常工作,需要在客户机上安装增强功能。
拖放功能默认禁用。此设置可以随时使用虚拟机“设备”菜单中的“拖放”菜单项进行更改。
请参阅4.4 节,“拖放”。
在“描述”选项卡中,您可以输入虚拟机的描述。这不会影响机器的功能,但您可能会发现此空间有助于记录虚拟机配置和已安装软件等信息。
要在“描述”文本字段中插入换行符,请按 Shift+Enter。
“磁盘加密”选项卡使您能够加密连接到虚拟机的磁盘。
要启用磁盘加密,请选中“启用磁盘加密”复选框。
可以使用设置来配置用于加密的密码算法和加密密码。
除磁盘映像外,所有与虚拟机相关的文件均未加密存储。要加密这些文件,请使用VBoxManage encryptvm 命令,如9.22 节,“虚拟机加密”所述。
“系统”类别将与呈现给虚拟机的基本硬件相关的各种设置分组。
由于 Microsoft Windows 的激活机制对硬件更改敏感,因此如果您更改 Windows 客户机的硬件设置,其中一些更改可能会触发向 Microsoft 发出另一次激活请求。
以下选项卡可用。
在“主板”选项卡中,您可以配置通常在真实计算机主板上的虚拟硬件。
基本内存:设置虚拟机运行时分配给虚拟机的 RAM 量。指定的内存量将从主机操作系统请求,因此在尝试启动虚拟机时,它必须在主机上可用或作为空闲内存可用,并且在虚拟机运行时主机将不可用。这与“新建虚拟机”向导中指定的设置相同,如1.8 节,“创建您的第一个虚拟机”所述。
通常,可以在安装客户操作系统后更改内存大小。但您不得将内存减少到操作系统无法启动的量。
引导顺序:确定客户操作系统尝试从各种虚拟启动设备启动的顺序。类似于真实 PC 的 BIOS 设置,Oracle VM VirtualBox 可以告诉客户操作系统从虚拟软盘、虚拟 CD/DVD 驱动器、虚拟硬盘驱动器(每个都由其他虚拟机设置定义)、网络启动,或者不从这些设备启动。
如果选择“网络”,虚拟机将尝试使用 PXE 机制从网络启动。这需要在命令行中详细配置。请参阅8.10 节,“VBoxManage modifyvm”。
芯片组:您可以选择将呈现给虚拟机的芯片组。PIIX3 是大多数客户机的默认芯片组。对于某些客户操作系统(如 Mac OS X),PIIX3 芯片组支持不佳。因此,Oracle VM VirtualBox 支持 ICH9 芯片组的仿真,该芯片组支持 PCI Express、三个 PCI 总线、PCI 到 PCI 桥和消息信号中断 (MSI)。这使得现代操作系统能够寻址更多 PCI 设备,并且不再需要 IRQ 共享。使用 ICH9 芯片组还可以配置多达 36 张网卡,而 PIIX3 最多支持八个网卡。请注意,ICH9 支持是实验性的,不建议不需要它的客户操作系统使用。
TPM:启用对可信平台模块 (TPM) 安全处理器的支持。从支持的 TPM 版本中选择。
指针设备:某些客户操作系统的默认虚拟指针设备是传统的 PS/2 鼠标。如果设置为“USB 平板电脑”,Oracle VM VirtualBox 将向虚拟机报告存在 USB 平板电脑设备,并通过此设备向虚拟机发送鼠标事件。另一个设置是“USB 多点触控平板电脑”,适用于运行 Windows 8 或更高版本的客户机。
使用虚拟 USB 平板电脑的优点是,运动以绝对坐标而不是相对位置变化报告。这使得 Oracle VM VirtualBox 能够将虚拟机窗口上的鼠标事件转换为平板电脑事件,而无需在客户机中“捕获”鼠标,如1.9.2 节,“捕获和释放键盘与鼠标”所述。即使未安装增强功能,这也能使使用虚拟机变得不那么繁琐。
启用 I/O APIC:高级可编程中断控制器 (APIC) 是一种 x86 硬件功能,已取代可编程中断控制器 (PIC)。使用 I/O APIC,操作系统可以使用超过 16 个中断请求 (IRQ),从而避免 IRQ 共享以提高可靠性。
启用 I/O APIC 是必需的,特别是对于 64 位 Windows 客户操作系统。如果您想在虚拟机中使用多个虚拟 CPU,这也是必需的。
然而,除 Windows 之外,某些操作系统对 I/O APIC 的软件支持一直不可靠。此外,使用 I/O APIC 会略微增加虚拟化的开销,从而稍微降低客户操作系统的速度。
所有 Windows 操作系统都会安装不同的内核,具体取决于 I/O APIC 是否可用。因此,与 ACPI 一样,I/O APIC 在安装 Windows 客户操作系统后不得关闭。但是,安装后将其打开将无效。
硬件时钟使用 UTC 时间:如果选中,Oracle VM VirtualBox 将以 UTC 格式向客户机报告系统时间,而不是本地(主机)时间。这会影响虚拟实时时钟 (RTC) 的运行方式,并且对于类 UNIX 客户操作系统可能有用,它们通常期望硬件时钟设置为 UTC。
启用 EFI:启用可扩展固件接口 (EFI),它取代了传统 BIOS,并且可能对某些高级用例有用。请参阅3.14 节,“替代固件 (EFI)”。
启用安全启动:启用安全启动,为启动客户操作系统提供安全环境。
此外,您可以关闭 Oracle VM VirtualBox 默认呈现给客户操作系统的高级配置和电源接口 (ACPI)。
ACPI 是允许操作系统识别硬件、配置主板和其他设备以及管理电源的当前行业标准。由于大多数计算机都包含此功能,并且 Windows 和 Linux 都支持 ACPI,因此它在 Oracle VM VirtualBox 中也默认启用。ACPI 只能使用命令行关闭。请参阅8.10 节,“VBoxManage modifyvm”。
所有 Windows 操作系统都会安装不同的内核,具体取决于 ACPI 是否可用。这意味着在安装 Windows 客户操作系统后,ACPI不得关闭。但是,安装后将其打开将无效。
在“处理器”选项卡中,您可以配置虚拟机使用的 CPU 设置。
处理器:设置客户操作系统可见的虚拟 CPU 核心数量。Oracle VM VirtualBox 支持对称多处理 (SMP),并可向每个虚拟机呈现最多 32 个虚拟 CPU 核心。
您不应配置虚拟机使用比物理上可用的 CPU 核心更多的核心。这包括真实核心,不包括超线程。
执行上限:配置 CPU 执行上限。这限制了主机 CPU 用于模拟虚拟 CPU 的时间量。默认设置为 100%,表示没有限制。设置为 50% 表示单个虚拟 CPU 最多可以使用单个主机 CPU 的 50%。请注意,限制虚拟 CPU 的执行时间可能会导致客户机计时问题。
如果在“处理器”选项卡中设置了可能影响系统性能的执行上限,则会显示警告。
启用 PAE/NX:确定主 CPU 的 PAE 和 NX 功能是否将暴露给虚拟机。
PAE 代表物理地址扩展。通常,如果操作系统启用并支持,即使是 32 位 x86 CPU 也可以访问超过 4 GB 的 RAM。这通过向内存地址添加另外 4 位来实现,因此使用 36 位可以寻址高达 64 GB。某些操作系统(如 Ubuntu Server)要求 CPU 支持 PAE,否则无法在没有它的虚拟机中运行。
启用嵌套 VT-x/AMD-V:启用嵌套虚拟化,将硬件虚拟化功能直通到客户虚拟机。
对于运行现代服务器操作系统的虚拟机,Oracle VM VirtualBox 还支持 CPU 热插拔。有关详细信息,请参阅9.4 节,“CPU 热插拔”。
在此选项卡上,您可以配置 Oracle VM VirtualBox 以使用主机 CPU 支持的硬件虚拟化扩展。
半虚拟化接口:Oracle VM VirtualBox 提供半虚拟化接口以提高客户操作系统的时间精度和性能。可用选项在8.10 节,“VBoxManage modifyvm”中的--paravirt-provider
选项下有详细说明。有关半虚拟化提供商的更多详细信息,请参阅10.5 节,“半虚拟化提供商”。
硬件虚拟化:您可以为每个虚拟机配置硬件虚拟化功能。
启用嵌套分页:如果主机 CPU 支持嵌套分页 (AMD-V) 或 EPT (Intel VT-x) 功能,那么通过在硬件虚拟化之外启用嵌套分页,您可以预期性能会显著提高。有关技术详细信息,请参阅10.6 节,“嵌套分页和 VPID”。有关 Intel EPT 安全建议,请参阅13.4.1 节,“CVE-2018-3646”。
高级用户可能对硬件虚拟化的技术细节感兴趣。请参阅10.3 节,“硬件虚拟化”。
在大多数情况下,“加速”选项卡上的默认设置将运行良好。Oracle VM VirtualBox 会根据您创建虚拟机时选择的操作系统选择合理的默认值。然而,在某些情况下,您可能希望更改预配置的默认值。
以下选项卡可用于配置虚拟机的显示。
显存:设置虚拟显卡提供给客户机的内存大小,以 MB 为单位。与主内存一样,指定的数量将从主机的驻留内存中分配。根据显存的大小,可能会提供更高的分辨率和颜色深度。
如果显存量太小而无法将虚拟机切换到全屏模式,VirtualBox 管理器将显示警告。最小值取决于虚拟显示器数量、屏幕分辨率和主机显示器的颜色深度,以及是否使用3D 加速和2D 视频加速。大致估算为(颜色深度 / 8)x 垂直像素 x 水平像素 x 屏幕数量 = 字节数。如果使用显示加速,可能需要额外内存。
显示器数量:通过此设置,Oracle VM VirtualBox 可以为虚拟机提供多个虚拟显示器。如果客户操作系统支持连接多个显示器,Oracle VM VirtualBox 可以假装存在多个虚拟显示器。最多支持八个此类虚拟显示器。
多个显示器的输出在主机上并排运行的多个虚拟机窗口中显示。然而,在全屏和无缝模式下,它们使用连接到主机的可用物理显示器。因此,要使全屏和无缝模式与多个显示器一起工作,您需要至少与您配置的虚拟显示器数量相同的物理显示器,否则 Oracle VM VirtualBox 将报告错误。
当您处于全屏或无缝模式时,可以通过在“视图”菜单中按下主机键 + Home 键来配置客户机和主机显示器之间的关系。
另请参阅章节 14,《已知限制》。
缩放比例:启用显示尺寸缩放。对于多显示器显示,您可以为单个显示器设置缩放比例,或全局应用于所有显示器。使用滑块选择最高 200% 的缩放比例。
您可以为所有虚拟机设置默认缩放比例。使用“首选项”窗口中的“显示”选项卡。
显卡控制器:指定客户虚拟机使用的显卡适配器类型。请注意,您必须在客户虚拟机上安装增强功能才能指定 VBoxSVGA 或 VMSVGA 显卡控制器。以下选项可用:
VBoxSVGA:使用 Windows 7 或更高版本的新虚拟机的默认显卡控制器。
与传统 VBoxVGA 选项相比,此显卡控制器提高了性能和 3D 支持。
VBoxVGA:将此显卡控制器用于传统客户操作系统。这是 Windows 7 之前版本和 Oracle Solaris 的默认显卡控制器。
此显卡控制器不支持 3D 加速。
VMSVGA:使用此显卡控制器模拟 VMware SVGA 显卡设备。这是 Linux 客户机的默认显卡控制器。
无:不模拟显卡适配器类型。
启用 3D 加速:如果虚拟机安装了增强功能,您可以在此处选择客户机是否应支持加速 3D 图形。请参阅4.5.1 节,“硬件 3D 加速 (OpenGL 和 Direct3D 8/9)”。
在“远程显示”选项卡上,如果安装了 VirtualBox 远程显示扩展 (VRDE),您可以启用内置于 Oracle VM VirtualBox 中的 VRDP 服务器。这使您可以使用任何标准 RDP 查看器(例如 Microsoft Windows 附带的mstsc.exe)远程连接到虚拟机的控制台。在 Linux 和 Oracle Solaris 系统上,您可以使用标准开源rdesktop 程序。这些功能在7.1 节,“远程显示 (VRDP 支持)”中进行了描述。
启用服务器:选中此复选框并配置远程显示连接的设置。
在“录制”选项卡上,您可以为虚拟机启用视频和音频录制并更改相关设置。请注意,这些功能可以在虚拟机运行时启用和禁用。
启用录制:选中此复选框并选择“录制模式”选项。
录制模式:您可以选择录制视频、音频,或同时录制视频和音频。
“录制”选项卡上的一些设置可能会根据“录制模式”设置而变灰。
文件路径:录制文件保存的位置。
帧大小:录制视频的视频分辨率,以像素为单位。下拉列表使您可以从常用帧大小中进行选择。
帧率:使用滑块设置每秒录制的最大视频帧数 (FPS)。频率更高的帧将被跳过。增加此值会减少跳过的帧数并增加文件大小。
视频质量:使用滑块设置视频的比特率,以千比特每秒为单位。增加此值会改善视频外观,代价是文件大小增加。
音频质量:使用滑块设置音频录制质量。增加此值会提高音频质量,代价是文件大小增加。
屏幕:对于多显示器显示,您可以选择从哪些屏幕录制视频。
当您调整视频和音频录制设置时,会显示五分钟视频的近似输出文件大小。
虚拟机设置中的“存储”类别使您能够将虚拟硬盘、CD/DVD 和软盘映像及驱动器连接到虚拟机。
在真实计算机中,所谓的存储控制器将物理磁盘驱动器连接到计算机的其他部分。类似地,Oracle VM VirtualBox 将虚拟存储控制器呈现给虚拟机。在每个控制器下,连接到控制器的虚拟设备(如硬盘、CD/DVD 或软盘驱动器)将显示出来。
本节快速介绍了 Oracle VM VirtualBox 的存储设置。有关 Oracle VM VirtualBox 中可用存储设置的完整描述,请参阅章节 5,《虚拟存储》。
如果您使用“创建虚拟机”向导创建机器,通常会看到如下内容:
根据您创建虚拟机时选择的客户操作系统类型,新虚拟机包含以下存储设备:
IDE 控制器。虚拟 CD/DVD 驱动器连接到 IDE 控制器辅助通道上的设备 0。
SATA 控制器。这是一种现代存储控制器类型,用于更高的硬盘数据吞吐量,虚拟硬盘连接到它。最初,您通常会有一个这样的虚拟磁盘,但如前一个屏幕截图所示,您可以有多个。每个都由一个磁盘映像文件表示,例如此示例中的 VDI 文件。
如果您使用旧版本的 Oracle VM VirtualBox 创建虚拟机,默认存储布局可能会有所不同。那时您可能只有一个 IDE 控制器,CD/DVD 驱动器和硬盘都连接到它。如果您在创建虚拟机时选择了较旧的操作系统类型,也可能出现这种情况。由于较旧的操作系统在没有额外驱动程序的情况下不支持 SATA,Oracle VM VirtualBox 将确保最初没有此类设备。请参阅5.1 节,“硬盘控制器”。
Oracle VM VirtualBox 还提供了一个软盘控制器。您不能向此控制器添加软盘驱动器以外的设备。虚拟软盘驱动器,与虚拟 CD/DVD 驱动器一样,可以连接到主机软盘驱动器(如果您有)或磁盘映像,在这种情况下必须是 RAW 格式。
您可以自由修改这些媒体附件。例如,如果您希望从您创建的另一个虚拟磁盘复制一些文件,您可以将该磁盘作为第二个硬盘连接,如上面的屏幕截图所示。您还可以添加第二个虚拟 CD/DVD 驱动器,或更改这些项目的连接位置。以下选项可用:
要添加另一个虚拟硬盘、CD/DVD 或软盘驱动器,请选择应添加到的存储控制器(例如 IDE、SATA、SCSI、SAS、软盘控制器),然后单击树下方的添加磁盘按钮。然后您可以选择“光驱”或“硬盘”。如果您单击了软盘控制器,则可以改为添加软盘驱动器。或者,右键单击存储控制器并选择其中的菜单项。
将显示一个对话框,使您能够选择现有磁盘映像文件或创建新的磁盘映像文件。根据磁盘映像的类型,对话框称为“硬盘选择器”、“光盘选择器”或“软盘选择器”。
有关 Oracle VM VirtualBox 支持的映像文件类型的信息,请参阅5.2 节,“磁盘映像文件 (VDI, VMDK, VHD, HDD)”。
对于虚拟 CD/DVD 驱动器,映像文件通常以标准 ISO 格式存在。最常见的是,当您从 Internet 获取的 ISO 文件安装操作系统时,您将选择此选项。例如,大多数 Linux 发行版都以这种方式提供。
根据磁盘映像的类型,您可以在“存储”设置页面右侧设置磁盘映像的以下属性:
虚拟磁盘连接到的控制器的设备插槽。IDE 控制器有四个插槽:主设备 0、主设备 1、辅助设备 0 和辅助设备 1。相比之下,SATA 和 SCSI 控制器为您提供多达 30 个插槽用于连接虚拟设备。
固态驱动器将虚拟磁盘呈现给客户机作为固态设备。
热插拔将虚拟磁盘呈现给客户机作为热插拔设备。
对于虚拟 CD/DVD 驱动器,您可以选择“实时 CD/DVD”。这意味着当客户机系统弹出时,虚拟光盘不会被移除。
要移除附件,请选择它并单击底部的“移除”图标,或者右键单击它并选择菜单项。
可移动媒体(如 CD/DVD 和软盘)可以在客户机运行时更改。由于此时“设置”窗口不可用,您也可以从虚拟机窗口的“设备”菜单访问这些设置。
虚拟机“设置”窗口中的“音频”部分确定虚拟机是否会检测到连接的声卡,以及音频输出是否应在主机系统上播放。
要为客户机启用音频,请选中“启用音频”复选框。以下设置可用:
主机音频驱动程序:Oracle VM VirtualBox 在主机上使用的音频驱动程序。
所有新虚拟机默认启用“默认”选项。此选项会自动为主机平台选择最佳音频驱动程序。这使您可以在不同平台之间移动虚拟机,而无需更改音频驱动程序。
在 Linux 主机上,根据您的主机配置,您可以在 OSS、ALSA 或 PulseAudio 子系统之间进行选择。在较新的 Linux 发行版上,优先使用 PulseAudio 子系统。
Oracle Solaris 主机仅支持 OSS。Oracle Solaris 主机不再支持 Oracle Solaris Audio 音频后端。
音频控制器:您可以选择模拟 Intel AC'97 控制器、Intel HD Audio 控制器或 SoundBlaster 16 声卡。
启用音频输出:仅为虚拟机启用音频输出。
启用音频输入:仅为虚拟机启用音频输入。
虚拟机“设置”窗口中的“网络”部分使您能够配置 Oracle VM VirtualBox 如何向虚拟机呈现虚拟网卡以及它们如何运行。
当您首次创建虚拟机时,Oracle VM VirtualBox 默认启用一个虚拟网卡并为其选择网络地址转换 (NAT) 模式。这样,客户机可以使用主机的网络连接到外部世界,并且外部世界可以连接到您选择在虚拟机外部可见的客户机上的服务。
此默认设置适用于大多数 Oracle VM VirtualBox 用户。但是,Oracle VM VirtualBox 在虚拟化网络方面极其灵活。它支持每个虚拟机多个虚拟网卡。前四个虚拟网卡可以在 VirtualBox 管理器中详细配置。可以使用VBoxManage 命令配置其他网卡。
有许多网络选项可用。有关更多信息,请参阅章节 6,《虚拟网络》。
Oracle VM VirtualBox 支持在虚拟机中使用虚拟串口。
自原始 IBM PC 以来,个人计算机都配备了一到两个串口,DOS 和 Windows 也称之为 COM 端口。串口通常与调制解调器一起使用,在 USB 普及之前,一些电脑鼠标也连接到串口。
虽然串口不像以前那样常见,但它们仍然有一些重要的用途。例如,在以太网不可用时,串口可以用于通过零调制解调器电缆设置一个原始网络。此外,串口对于需要进行内核调试的系统程序员来说是不可或缺的,因为内核调试软件通常通过串口与开发人员交互。通过虚拟串口,系统程序员可以在虚拟机上进行内核调试,而无需连接真实计算机。
如果启用了虚拟串口,客户操作系统会看到一个标准的 16550A 兼容 UART 设备。可以使用VBoxManage modifyvm 命令配置其他 UART 类型。支持接收和发送数据。此虚拟串口如何连接到主机是可配置的,详细信息取决于您的主机操作系统。
您可以使用“设置”选项卡或VBoxManage 命令来设置虚拟串口。对于后者,请参阅8.10 节,“VBoxManage modifyvm”中关于--uart
、--uart-mode
和--uart-type
选项的信息。
每个虚拟机最多可配置四个虚拟串口。对于每个设备,您必须设置以下内容:
端口号:这决定了虚拟机应该看到的串口。为获得最佳结果,请使用以下传统值:
COM1: I/O 基址 0x3F8, IRQ 4
COM2: I/O 基址 0x2F8, IRQ 3
COM3: I/O 基址 0x3E8, IRQ 4
COM4: I/O 基址 0x2E8, IRQ 3
您还可以配置用户定义的串口。输入 I/O 基址和中断 (IRQ)。
端口模式:虚拟端口连接到什么。对于每个虚拟串口,您有以下选项:
未连接:客户机将看到设备,但其行为就好像没有连接电缆一样。
主机设备:将虚拟串口连接到主机上的物理串口。在 Windows 主机上,这将是一个像COM1
这样的名称。在 Linux 或 Oracle Solaris 主机上,它将是一个像/dev/ttyS0
这样的设备节点。Oracle VM VirtualBox 然后将简单地将从虚拟串口接收和发送的所有数据重定向到物理设备。
主机管道:配置 Oracle VM VirtualBox 将虚拟串口连接到主机上的软件管道。这取决于您的主机操作系统,具体如下:
在 Windows 主机上,数据将通过命名管道发送和接收。管道名称必须是\\.\pipe\
格式,其中name
name
应标识虚拟机,但可以自由选择。
在 Mac OS、Linux 或 Oracle Solaris 主机上,则使用本地域套接字。套接字文件名必须选择,以便运行 Oracle VM VirtualBox 的用户具有足够的权限来创建和写入它。/tmp
目录通常是一个不错的选择。
在 Linux 上,有各种工具可以连接到本地域套接字或以服务器模式创建它。最灵活的工具是socat,它是许多发行版的一部分。
在这种情况下,您可以配置 Oracle VM VirtualBox 是否应创建命名管道,或者非 Windows 主机上的本地域套接字,或者 Oracle VM VirtualBox 是否应假定管道或套接字已存在。使用VBoxManage 命令行选项,这分别称为服务器模式或客户端模式。
对于两个虚拟机之间的直接连接,相当于零调制解调器电缆,只需配置一台虚拟机创建管道或套接字,另一台连接到它。
原始文件:将虚拟串口输出发送到文件。此选项对于捕获客户机的诊断输出非常有用。任何文件都可以用于此目的,只要运行 Oracle VM VirtualBox 的用户具有足够的权限来创建和写入文件。
TCP:对于通过 TCP/IP 转发串行流量、充当服务器或充当连接到其他服务器的 TCP 客户端非常有用。此选项使远程机器能够使用 TCP 直接连接到客户机的串口。
TCP 服务器:取消选择“连接到现有管道/套接字”复选框,并在“路径/地址”字段中指定端口号。这通常是 23 或 2023。请注意,在类 UNIX 系统上,普通用户必须使用大于 1024 的端口号。
客户端可以使用诸如PuTTY或telnet命令行工具之类的软件来访问 TCP 服务器。
TCP 客户端:要通过 Internet 或局域网创建虚拟零调制解调器电缆,另一方可以通过在“路径/地址”字段中指定
来使用 TCP 进行连接。如果选择“连接到现有管道/套接字”复选框,则 TCP 套接字将以客户端模式运行。hostname
:port
每个虚拟机最多可配置四个串口,但您可以从上述任何端口号中进行选择。然而,串口不能可靠地共享中断。如果两个端口同时使用,它们必须使用不同的中断级别,例如 COM1 和 COM2,但不能是 COM1 和 COM3。
虚拟机“设置”窗口中的“USB”部分使您能够配置 Oracle VM VirtualBox 精密的 USB 支持。
Oracle VM VirtualBox 可以使虚拟机直接访问主机上的 USB 设备。为此,Oracle VM VirtualBox 会向客户操作系统呈现一个虚拟 USB 控制器。一旦客户机系统开始使用 USB 设备,它将在主机上显示为不可用。
小心主机上当前正在使用的 USB 设备。例如,如果您允许客户机连接到主机上当前已挂载的 USB 硬盘,当客户机激活时,它将从主机断开连接而未正常关机。这可能会导致数据丢失。
Oracle Solaris 主机在 USB 支持方面有一些已知限制。请参阅章节 14,《已知限制》。
除了允许客户机访问您的本地 USB 设备外,Oracle VM VirtualBox 甚至允许您的客户机通过 VirtualBox 远程桌面扩展 (VRDE) 连接到远程 USB 设备。请参阅7.1.4 节,“远程 USB”。
要为虚拟机启用 USB,请选中“启用 USB 控制器”复选框。以下设置可用:
USB 控制器:选择具有指定 USB 支持级别的控制器,如下所示:
OHCI 用于 USB 1.1
EHCI 用于 USB 2.0。这也启用 OHCI。
xHCI 用于 USB 3.0。这支持所有 USB 速度。
USB 设备筛选器:为虚拟机启用 USB 支持后,您可以详细确定哪些设备将自动连接到客户机。为此,您可以通过指定 USB 设备的某些属性来创建筛选器。匹配筛选器的 USB 设备一旦连接到主机,将自动传递给客户机。没有匹配筛选器的 USB 设备可以手动传递给客户机,例如使用“设备”、“USB”菜单。
单击“USB 设备筛选器”窗口右侧的“+”按钮将创建一个新筛选器。您可以为筛选器命名,以便将来参考,并指定筛选条件。您指定的条件越多,设备选择就越精确。例如,如果您只指定供应商 ID 为 046d,则 Logitech 生产的所有设备都将可供客户机使用。另一方面,如果您填写所有字段,筛选器将仅适用于特定供应商的特定设备型号,甚至不适用于具有不同修订版和序列号的同类型其他设备。
详细来说,以下条件可用:
供应商和产品 ID。对于 USB,每个 USB 产品供应商都有一个全球唯一的识别号,称为供应商 ID。类似地,每条产品线都分配一个产品 ID 号。这两个数字通常以十六进制书写,并用冒号分隔供应商和产品 ID。例如,046d:c016
代表供应商 Logitech,产品为 M-UV69a Optical Wheel Mouse。
或者,您也可以按名称指定制造商和产品。
要列出连接到主机的所有 USB 设备及其各自的供应商 ID 和产品 ID,请使用以下命令:
VBoxManage list usbhost
在 Windows 上,您也可以在“设备管理器”中查看连接到系统的所有 USB 设备。在 Linux 上,您可以使用lsusb命令。
序列号。虽然供应商 ID 和产品 ID 对于识别 USB 设备非常具体,但如果您有两个相同品牌和产品线的相同设备,您还需要它们的序列号才能正确筛选它们。
远程。此设置指定设备是仅本地、仅远程(例如通过 VRDP)还是两者皆可。
在 Windows 主机上,您需要拔下并重新连接 USB 设备才能在使用它之前为其创建筛选器。
例如,您可以创建一个新的 USB 筛选器,并指定 Logitech, Inc 的供应商 ID 为 046d,制造商索引为 1,并且“非远程”。然后,主机系统上由 Logitech, Inc 生产且制造商索引为 1 的任何 USB 设备都将对客户机系统可见。
多个筛选器可以选择单个设备。例如,一个筛选器选择所有 Logitech 设备,另一个筛选器选择特定网络摄像头。
您可以通过取消选中筛选器名称旁边的复选框来停用筛选器而不删除它们。
在 Windows 主机上,内核模式设备驱动程序提供 USB 代理支持。它实现了 USB 监视器(使 Oracle VM VirtualBox 能够在设备插入时捕获它们)和 USB 设备驱动程序(为特定虚拟机声明 USB 设备)。安装驱动程序后无需重新启动系统。此外,您无需重新插入设备,Oracle VM VirtualBox 即可声明它们。
在受支持的 Linux 主机上,Oracle VM VirtualBox 通过文件系统中的特殊文件访问 USB 设备。安装 Oracle VM VirtualBox 后,这些文件对vboxusers
系统组中的所有用户可用。为了能够从客户机系统访问 USB,请确保您是此组的成员。
共享文件夹使您能够轻松地在虚拟机和主机之间交换数据。此功能要求在虚拟机中安装 Oracle VM VirtualBox 增强功能,并在4.3 节,“共享文件夹”中进行了详细描述。
“用户界面”部分使您能够更改所选虚拟机用户界面的某些方面。
菜单栏:此小部件使您能够通过单击菜单名称来取消选择它,从而禁用整个菜单。可以通过取消选中条目旁边的复选框来禁用菜单项。在 Windows 和 Linux 主机上,可以通过取消选中右侧的复选框来禁用整个菜单栏。
迷你工具栏:在全屏或无缝模式下,Oracle VM VirtualBox 可以显示一个小型工具栏,其中包含通常从虚拟机菜单栏中可用的一些项目。除非您将鼠标移到上面,否则此工具栏会缩小为一条小灰线。使用此工具栏,您可以从全屏或无缝模式返回,控制机器执行,或启用某些设备。如果您不想看到工具栏,请禁用“在全屏/无缝模式下显示”设置。
“在屏幕顶部显示”设置使您可以在屏幕顶部显示工具栏,而不是在底部显示。
Mini工具栏在macOS主机上不可用。
状态栏:此小部件使您能够禁用和重新排序状态栏上的图标。取消选中图标的复选框以禁用它,或通过拖放图标来重新排列图标。要禁用整个状态栏,请取消选中左侧的复选框。
Oracle VM VirtualBox 包含对可扩展固件接口 (EFI) 的实验性支持,EFI 是一种行业标准,旨在取代传统的 BIOS 作为计算机引导和某些系统服务的主要接口。
默认情况下,Oracle VM VirtualBox 使用 BIOS 固件作为虚拟机。要为给定虚拟机使用 EFI,您可以在机器的设置窗口中启用 EFI。请参阅第 3.5.1 节,“主板选项卡”。或者,使用以下VBoxManage命令行界面:
VBoxManage modifyvm "VM name" --firmware efi
要切换回使用 BIOS
VBoxManage modifyvm "VM name" --firmware bios
EFI 的一个知名用户是 Apple Mac OS X。较新的 Linux 版本和从 Vista 开始的 Windows 版本也提供可以使用 EFI 引导的特殊版本。
Oracle VM VirtualBox 中 EFI 的另一个可能用途是开发和测试 EFI 应用程序,而无需启动任何操作系统。
请注意,Oracle VM VirtualBox 的 EFI 支持是实验性的,并且会随着 EFI 的成熟和普及而得到增强。Mac OS X、Linux 和较新的 Windows 客户机已知运行良好。Windows 7 客户机无法使用 Oracle VM VirtualBox 的 EFI 实现进行引导。
EFI 提供了两种不同的视频接口:GOP(图形输出协议)和 UGA(通用图形适配器)。Mac OS X 等现代操作系统通常使用 GOP,而一些较旧的系统仍使用 UGA。Oracle VM VirtualBox 提供了一个配置选项来控制这两种接口的图形分辨率,使得这种差异对用户而言大部分无关紧要。
默认分辨率为 1024x768。要为 EFI 选择图形分辨率,请使用以下VBoxManage命令:
VBoxManage setextradata "VM name" VBoxInternal2/EfiGraphicsResolution HxV
从以下默认分辨率列表中确定水平分辨率 H 和垂直分辨率 V
640x480, 32bpp, 4:3
800x600, 32bpp, 4:3
1024x768, 32bpp, 4:3
1152x864, 32bpp, 4:3
1280x720, 32bpp, 16:9
1280x800, 32bpp, 16:10
1280x1024, 32bpp, 5:4
1400x1050, 32bpp, 4:3
1440x900, 32bpp, 16:10
1600x900, 32bpp, 16:9
1600x1200, 32bpp, 4:3
1680x1050, 32bpp, 16:10
1920x1080, 32bpp, 16:9
1920x1200, 32bpp, 16:10
2048x1080, 32bpp, 19:10
2160x1440, 32bpp, 3:2
2304x1440, 32bpp, 16:10
2560x1440, 32bpp, 16:9
2560x1600, 32bpp, 16:10
2880x1800, 32bpp, 16:10
3200x1800, 32bpp, 16:9
3200x2048, 32bpp, 16:10
3840x2160, 32bpp, 16:9
3840x2400, 32bpp, 16:10
4096x2160, 32bpp, 19:10
4096x3072, 32bpp, 4:3
5120x2880, 32bpp, 16:9
5120x3200, 32bpp, 16:10
6400x4096, 32bpp, 16:10
6400x4800, 32bpp, 4:3
7680x4320, 32bpp, 16:9
如果此默认分辨率列表无法满足您的需求,请参阅第 9.6.1 节,“自定义 VESA 分辨率”。请注意,在自定义视频模式中指定的色深值必须指定。接受 8、16、24 和 32 的色深。EFI 默认假定色深为 32。
EFI 默认视频分辨率设置只能在虚拟机关闭电源时更改。