虚拟机基础:Oracle VirtualBox 简介与使用入门 – wiki基地


虚拟机基础:Oracle VirtualBox 简介与使用入门

在当今的计算环境中,我们经常需要运行不同的操作系统、测试软件在不同环境下的兼容性,或者只是安全地尝试一些可能具有风险的操作。直接在物理计算机上进行这些活动有时会带来不便甚至危险。这时,“虚拟机”(Virtual Machine,简称 VM)的概念应运而生,它为我们提供了一个完美的解决方案。

虚拟机就像是在你现有的计算机(称为宿主机或 Host)内部创建的一台独立的虚拟计算机。这台虚拟计算机拥有自己的虚拟硬件(CPU、内存、硬盘、网卡等),可以在其上安装并运行一个完整的操作系统(称为客户机或 Guest)。而管理和运行这些虚拟机的软件,就叫做“虚拟机监视器”(Virtual Machine Monitor,VMM)或“Hypervisor”。

在众多流行的虚拟机软件中,Oracle VirtualBox 凭借其免费、开源、跨平台以及强大的功能,成为了个人用户和开发者广泛选择的工具。本文将带你深入了解 Oracle VirtualBox,从基本概念到安装使用,助你踏上虚拟化之旅。

第一部分:虚拟化与 VirtualBox 简介

1. 什么是虚拟化?

虚拟化是一种技术,它允许在单一的物理硬件平台上运行多个相互隔离的操作系统实例。简单来说,就是将物理资源(如 CPU、内存、存储、网络)抽象化,形成易于管理或使用的虚拟资源。

根据运行方式的不同,Hypervisor 通常分为两类:

  • Type 1 Hypervisor (裸金属型): 直接运行在物理硬件上,管理硬件资源并分配给虚拟机。例如 VMware ESXi、Microsoft Hyper-V (Server版本)、Citrix XenServer。它们通常用于服务器环境,性能较高。
  • Type 2 Hypervisor (寄居型): 运行在宿主机操作系统之上,利用宿主机的资源来创建和管理虚拟机。例如 Oracle VirtualBox、VMware Workstation/Fusion、Microsoft Virtual PC (已停产)。它们通常用于个人电脑或开发测试环境,安装和使用更方便。

Oracle VirtualBox 就属于 Type 2 Hypervisor。

2. Oracle VirtualBox 是什么?

Oracle VM VirtualBox(简称 VirtualBox)是由 Oracle 公司开发的一款功能强大的 x86/x64 架构虚拟机软件。它是一款免费、开源(核心部分,基于 GPLv2 许可证)的 Type 2 Hypervisor,这意味着你可以在 Windows、macOS、Linux、Solaris 等多种宿主操作系统上安装和运行它,并在其内部创建和运行几乎任何 x86/x64 架构的操作系统,包括不同版本的 Windows、各种 Linux 发行版、macOS (在特定条件下)、Solaris、BSD 等等。

3. VirtualBox 的主要特性与优势

  • 跨平台支持: VirtualBox 可以在多种主流操作系统上安装和运行,这使得用户可以在自己熟悉的平台上使用虚拟化技术。
  • 广泛的客户机操作系统支持: 几乎所有主流的 x86/x64 操作系统都可以在 VirtualBox 中作为客户机运行。
  • 免费且部分开源: 核心功能免费使用,降低了虚拟化入门的门槛。社区版基于开源许可证,用户可以查看和修改代码。
  • 易于使用: 提供直观的图形用户界面 (GUI),使得虚拟机的创建、配置和管理变得相对简单。
  • 快照功能 (Snapshots): 可以保存虚拟机在某个特定时间点的状态。如果后续操作导致问题,可以轻松回滚到之前的状态,非常适合测试和实验。
  • 宿主机与客户机之间的集成: 通过安装 Guest Additions(增强功能包),可以实现更高分辨率的显示、共享剪贴板、拖放文件、共享文件夹、无缝模式等功能,极大提升用户体验。
  • 硬件虚拟化支持: 支持 Intel VT-x 和 AMD-V 硬件虚拟化技术,可以显著提升虚拟机的性能。
  • 虚拟网络配置: 提供多种网络模式,满足不同需求的网络连接和隔离(NAT、桥接、仅主机、内部网络)。
  • USB 设备支持: 可以将宿主机的 USB 设备挂载到客户机中使用(需要安装 Extension Pack)。
  • 远程桌面连接 (VRDP): 允许通过 RDP 协议远程控制虚拟机(需要安装 Extension Pack)。
  • 命令行界面 (VBoxManage): 提供强大的命令行工具,方便自动化和脚本化管理虚拟机。
  • OVA/OVF 导入导出: 支持标准的开放虚拟化格式,方便虚拟机在不同虚拟化平台之间迁移。

4. 为什么选择 VirtualBox?

对于大多数个人用户、学生、开发者和中小型企业而言,VirtualBox 是一个极具吸引力的选择:

  • 成本: 核心功能完全免费,无需购买昂贵的商业许可证。
  • 灵活性: 可以在已有的电脑上安装,无需额外硬件。
  • 易用性: 图形界面友好,学习成本较低。
  • 功能丰富: 提供了测试、开发、学习所需的大部分常用功能。
  • 社区活跃: 遇到问题时容易找到解决方案和帮助。

第二部分:核心概念解析

在使用 VirtualBox 之前,理解一些核心概念非常有帮助:

  • 宿主机 (Host): 运行 VirtualBox 软件的物理计算机及其操作系统。例如,你的 Windows 11 笔记本电脑安装了 VirtualBox,那么 Windows 11 就是宿主操作系统,笔记本电脑就是宿主机。
  • 客户机 (Guest): 在虚拟机内部运行的操作系统。例如,你在 VirtualBox 中安装了一个 Ubuntu 系统,那么 Ubuntu 就是客户机操作系统,运行 Ubuntu 的虚拟机就是客户机。
  • 虚拟机监视器 (VMM) / Hypervisor: 管理和运行虚拟机的软件层。在 VirtualBox 中,VirtualBox 本身就是 Hypervisor。
  • 虚拟机 (Virtual Machine, VM): 由 Hypervisor 在宿主机上创建的、模拟了完整硬件环境的软件实体。每个 VM 都是一个独立的计算环境。
  • 虚拟硬盘 (Virtual Hard Disk, VHD): 存储客户机操作系统和数据的文件。VirtualBox 支持多种格式(VDI, VMDK, VHD 等)。虚拟硬盘文件通常存储在宿主机的某个位置。
    • 动态分配 (Dynamically allocated): 虚拟硬盘文件初始很小,随着客户机写入数据而逐渐增大,但最大不超过设定的上限。节省宿主机存储空间,但性能可能略低于固定大小。
    • 固定大小 (Fixed size): 虚拟硬盘文件在创建时就占用设定的全部空间。性能通常略好,但创建时间可能较长且占用空间固定。
  • ISO 镜像文件: 常见的操作系统安装文件格式,通常是一个 .iso 文件。安装客户机操作系统时,VirtualBox 会将 ISO 文件模拟成一张虚拟的光盘或 DVD 挂载到虚拟机中进行安装。
  • 快照 (Snapshot): 保存虚拟机在某一特定时刻的完整状态(包括内存、硬盘、配置等)。可以随时恢复到该状态。
  • 增强功能包 (Guest Additions): 一组安装在客户机操作系统内部的驱动程序和系统应用。安装后可以显著提升虚拟机性能、改善用户体验(如更高的显示分辨率、共享剪贴板、拖放、共享文件夹等)。强烈建议安装。
  • 扩展包 (Extension Pack): 一组安装在宿主机上的 VirtualBox 扩展功能。提供了对 USB 2.0/3.0 控制器、VirtualBox RDP (VRDP) 远程桌面、PXE 启动、磁盘加密等额外功能的支持。与 Guest Additions 不同,它安装在宿主机 VirtualBox 软件本身。强烈建议安装。
  • 网络适配器 (Network Adapter): 虚拟机用来连接网络的虚拟硬件。VirtualBox 提供多种网络模式(NAT, Bridged, Host-Only, Internal)来模拟不同的网络环境。

第三部分:VirtualBox 使用入门 – 从安装到创建第一个虚拟机

1. 下载 VirtualBox 软件

访问 VirtualBox 官方网站:https://www.virtualbox.org/

在下载页面找到适合你宿主操作系统版本的安装包 (Windows hosts, OS X hosts, Linux distributions, Solaris hosts)。

同时,务必下载 VirtualBox Extension Pack,它通常是一个单独的 .vbox-extpack 文件。它的版本号需要与你下载的 VirtualBox 版本号一致。

2. 安装 VirtualBox

安装过程与安装普通软件类似,通常是双击下载的安装文件,然后按照向导进行。

  • Windows: 运行 .exe 文件。可能会提示安装一些设备驱动程序(如网络适配器、USB 控制器驱动),请允许安装。
  • macOS: 运行 .dmg 文件,将 VirtualBox.app 拖到 Applications 文件夹。第一次运行时可能需要授予系统权限。
  • Linux: 根据你的发行版选择对应的安装包 (.deb for Debian/Ubuntu, .rpm for Fedora/CentOS/RHEL)。可以使用包管理器安装,或者双击安装包。可能需要添加当前用户到 vboxusers 用户组以使用 USB 设备等功能(sudo usermod -aG vboxusers your_username,替换 your_username 为你的实际用户名,并重新登录)。

安装完成后,启动 Oracle VM VirtualBox 管理器。

3. 安装 Extension Pack

安装完 VirtualBox 本体后,双击下载的 .vbox-extpack 文件。VirtualBox 管理器会自动打开并提示你安装扩展包。点击“安装”,阅读并同意许可协议后即可完成安装。这一步非常重要,否则你将无法使用 USB 3.0、远程桌面等功能。

4. 检查宿主机硬件虚拟化支持

为了获得最佳性能,强烈建议你的宿主机 CPU 支持硬件辅助虚拟化技术(Intel VT-x 或 AMD-V),并且在 BIOS/UEFI 设置中已开启。大多数现代 CPU 都支持,但可能需要在主板设置中手动启用。VirtualBox 在创建或运行虚拟机时会提示你是否启用了这些功能。

5. 创建你的第一个虚拟机

现在我们来创建一个新的虚拟机。

  1. 打开 VirtualBox 管理器: 启动 Oracle VM VirtualBox。
  2. 点击“新建”按钮: 在管理器窗口左上角。
  3. 填写基本信息:
    • 名称: 给你的虚拟机起一个有意义的名字,比如 “Ubuntu 22.04 Test”。
    • 安装 ISO 镜像: 如果你已经下载了操作系统安装 ISO 文件,可以在这里选择。VirtualBox 会根据 ISO 文件尝试自动识别操作系统类型和版本。如果暂时没有 ISO,可以留空。
    • 类型 (Type): 选择你计划安装的操作系统类型(如 Linux, Windows, macOS 等)。
    • 版本 (Version): 根据你选择的类型,进一步选择具体的操作系统版本(如 Ubuntu (64-bit), Windows 10 (64-bit))。如果你要安装的系统版本不在列表中,可以选择最接近的版本或者“Other”。
    • Skip Unattended Installation (跳过无人值守安装): 对于初学者,建议勾选此项,以便手动完成操作系统安装过程。
  4. 分配内存大小 (Memory size):
    • 为虚拟机分配 RAM。这个内存是从宿主机的总内存中划拨出来的。
    • 根据你要运行的客户机操作系统及其用途来决定。一般来说,Windows 10/11 建议至少分配 4GB (4096MB),Linux 桌面版建议至少 2GB (2048MB),服务器版可以根据需求调整。
    • 注意不要将所有宿主机内存都分配给虚拟机,宿主操作系统本身也需要内存运行。VirtualBox 会给出一个推荐范围。
  5. 创建虚拟硬盘 (Hard Disk):
    • 选择“现在创建虚拟硬盘”。
    • 硬盘文件类型: 推荐使用默认的 VDI (VirtualBox Disk Image)。
    • 物理硬盘上的存储分配:
      • 动态分配 (Dynamically allocated): 推荐。文件开始很小,随数据增多而增长,节省宿主机空间。
      • 固定大小 (Fixed size): 立即占用指定大小的空间,创建时间较长,性能可能稍好。
    • 文件位置和大小:
      • 选择虚拟硬盘文件保存的位置。
      • 设置虚拟硬盘的最大容量。对于 Windows 10/11 建议至少 50GB,Linux 桌面版建议至少 20GB。根据实际用途预留足够空间。
  6. 完成创建: 点击“创建”按钮。新的虚拟机就会出现在 VirtualBox 管理器左侧列表中。

6. 安装客户机操作系统

创建好虚拟机后,它还只是一个空的“硬件”平台,里面没有任何操作系统。接下来我们需要像安装系统到物理电脑一样,将操作系统的 ISO 镜像安装到这个虚拟机里。

  1. 选择虚拟机: 在 VirtualBox 管理器左侧列表中选中你刚创建的虚拟机。
  2. 点击“设置”按钮: 打开虚拟机配置窗口。
  3. 配置存储:
    • 在左侧分类中选择“存储 (Storage)”。
    • 在“存储树 (Storage Tree)”下,找到一个控制器(通常是 SATA 或 IDE),然后点击下面的“光驱”图标(通常显示为“空”)。
    • 在右侧的“属性 (Attributes)”区域,点击“光驱”旁边的下拉箭头或小光盘图标。
    • 选择“选择/创建虚拟光盘 (Choose/Create a Virtual Optical Disk…)”。
    • 找到并选择你下载好的操作系统 ISO 镜像文件。选择后,ISO 文件就会被“挂载”到虚拟机的光驱上。
  4. 启动虚拟机:
    • 回到 VirtualBox 管理器主界面,选中虚拟机。
    • 点击“启动 (Start)”按钮。
    • 虚拟机将在一个新窗口中启动。它会像物理电脑一样尝试从虚拟光驱启动,从而运行 ISO 镜像中的安装程序。
  5. 进行操作系统安装: 按照屏幕上的指示,完成客户机操作系统的安装过程。这个过程与在物理电脑上安装系统几乎完全相同。你需要选择安装语言、时区、创建用户、分区硬盘(虚拟硬盘)等等。
  6. 安装完成后的清理: 操作系统安装完成后,虚拟机通常会提示重启。重启前,建议先将虚拟光驱中的 ISO 镜像“弹出”或“移除”,以确保下次启动时从虚拟硬盘引导,而不是再次进入安装程序。在虚拟机窗口的菜单栏中,选择“设备 (Devices)” -> “分配光驱 (Optical Drives)” -> 找到并取消选择之前挂载的 ISO 文件,或者选择“移除虚拟盘 (Remove disk from virtual drive)”。

至此,你已经在 VirtualBox 中成功创建并安装了一个客户机操作系统。你可以像使用普通电脑一样使用这个虚拟机了。

第四部分:深入理解虚拟机设置

创建虚拟机时我们进行了一些基本设置,但 VirtualBox 提供了非常丰富的配置选项,允许你精细地调整虚拟机的行为和性能。选中虚拟机,点击“设置”按钮,我们将逐一了解主要设置分类:

1. 常规 (General)

  • 基本 (Basic): 显示虚拟机的名称、类型、版本。
  • 高级 (Advanced):
    • 共享剪贴板 (Shared Clipboard): 控制宿主机和客户机之间复制粘贴的方式 (Disabled, Host to Guest, Guest to Host, Bidirectional)。强烈建议设置为 Bidirectional。
    • 拖放 (Drag’n’Drop): 控制宿主机和客户机之间拖放文件的方式 (Disabled, Host to Guest, Guest to Host, Bidirectional)。强烈建议设置为 Bidirectional。注意: 共享剪贴板和拖放功能都需要在客户机中安装 Guest Additions 才能工作。
    • 描述 (Description): 为虚拟机添加文字描述,方便管理。
    • 磁盘加密 (Disk Encryption): 对虚拟硬盘进行加密,保护数据安全(需要 Extension Pack)。
  • 磁盘加密 (Disk Encryption): 配置虚拟硬盘的加密(需要 Extension Pack)。

2. 系统 (System)

  • 主板 (Motherboard):
    • 启动顺序 (Boot Order): 设置虚拟机启动时尝试从哪个设备引导(光驱、硬盘、软驱、网络)。
    • 芯片组 (Chipset): 通常选择 ICH9 或 PIIX3。
    • 指点设备 (Pointing Device): 模拟的鼠标类型。USB Tablet 通常在安装 Linux 或其他非 Windows 系统时提供更好的鼠标集成体验(尤其是在安装 Guest Additions 之前)。
    • 扩展特性 (Extended Features): 启用 I/O APIC (支持更多中断,对于多核 CPU 系统必要)、EFI (启用 EFI 启动,替代传统的 BIOS)。
  • 处理器 (Processor):
    • 处理器数量 (Processors): 为虚拟机分配的虚拟 CPU 核心数量。不要超过宿主机物理 CPU 的核心数。分配更多核心可以提高多任务处理性能,但过多可能会影响宿主机性能。
    • 执行上限 (Execution Cap): 限制虚拟机使用宿主机 CPU 的百分比。通常保持 100%。
    • 扩展特性 (Extended Features): 启用 PAE/NX (物理地址扩展/不可执行位,对于 32 位系统使用 4GB 以上内存或运行需要此功能的软件必要)。
    • 硬件虚拟化 (Hardware Virtualization): 启用 VT-x/AMD-V 和 Nested Paging (嵌套分页)。这是 VirtualBox 性能的关键,务必勾选,前提是宿主机硬件支持且 BIOS/UEFI 已开启。Paravirtualization Interface (半虚拟化接口) 可以选择 Default, KVM (Linux), Hyper-V (Windows), None。选择适合客户机操作系统的接口通常能带来性能提升。
  • 加速 (Acceleration): 配置硬件虚拟化接口和 Nested Paging。确保 VT-x/AMD-V 和 Nested Paging 已勾选。

3. 显示 (Display)

  • 屏幕 (Screen):
    • 显存大小 (Video Memory): 为虚拟机分配的显存大小。对于运行桌面环境或图形应用的客户机,增加显存可以提高流畅度,特别是在使用高分辨率或多显示器时。
    • 显示器数量 (Monitor Count): 模拟连接到虚拟机的显示器数量。
    • 缩放因子 (Scale Factor): 调整虚拟机窗口的缩放比例,在高 DPI 宿主机屏幕上很有用。
    • 启用 3D 加速 (Enable 3D Acceleration): 尝试利用宿主机的 GPU 进行 3D 图形加速。注意: 这需要客户机安装 Guest Additions 并正确配置。兼容性并非完美,可能导致问题,建议谨慎使用。
    • 启用 2D 视频加速 (Enable 2D Video Acceleration): 为 2D 视频播放提供加速。也需要 Guest Additions。
  • 远程桌面 (Remote Display): 配置通过 RDP 协议远程连接到虚拟机的功能(需要 Extension Pack)。
  • 视频捕捉 (Video Capture): 录制虚拟机屏幕活动。

4. 存储 (Storage)

  • 存储树 (Storage Tree): 显示虚拟机连接的存储控制器及其设备(虚拟硬盘、光驱)。
    • 控制器: 可以添加不同类型的存储控制器(IDE, SATA, SCSI, SAS, NVMe, Floppy)。SATA 通常用于虚拟硬盘和光驱,提供较好性能。IDE 通常用于兼容性目的。NVMe 性能最佳,但兼容性可能有所限制。
    • 虚拟硬盘: 在控制器下挂载 .vdi, .vmdk, .vhd 等文件。可以添加多个虚拟硬盘。
    • 光驱: 在控制器下挂载 .iso 文件作为虚拟光盘,或使用宿主机的物理光驱。
  • 可以添加或移除虚拟硬盘和光驱。

5. 音频 (Audio)

  • 启用音频 (Enable Audio): 控制是否为虚拟机提供音频功能。
  • 主机音频驱动 (Host Audio Driver): 选择 VirtualBox 在宿主机上使用的音频接口。
  • 音频控制器 (Audio Controller): 模拟的虚拟机声卡类型。

6. 网络 (Network)

VirtualBox 提供四种主要网络连接模式:

  • 网络地址转换 (NAT): 默认模式。 虚拟机共享宿主机的 IP 地址连接到外部网络。宿主机可以直接访问虚拟机,但外部网络无法直接访问虚拟机(除非配置端口转发)。适用于虚拟机只需访问外部网络、宿主机或其他虚拟机,而无需被外部直接访问的场景。
  • 网络地址转换服务 (NAT Network): 配置一个独立的 NAT 网络,允许多个虚拟机通过同一个 NAT 设备共享宿主机网络,且虚拟机之间可以互相访问。比单个 NAT 模式更灵活。
  • 桥接网卡 (Bridged Adapter): 虚拟机在网络上拥有一个独立的 IP 地址,与宿主机处于同一网络段,地位相当于网络中的一台物理设备。外部网络可以直接访问虚拟机,虚拟机也能直接访问外部网络和宿主机。适用于虚拟机需要作为独立服务器对外提供服务,或者需要与局域网内其他物理设备直接通信的场景。
  • 仅主机(Host-only)网络 (Host-Only Adapter): 创建一个仅限于宿主机和虚拟机之间互相通信的网络。虚拟机无法访问外部网络,外部网络也无法访问虚拟机。适用于构建一个隔离的测试环境,或虚拟机需要被宿主机管理/访问,但无需访问外部网络的场景。
  • 内部网络 (Internal Network): 创建一个完全隔离的网络,只有连接到这个内部网络的虚拟机之间可以互相通信,宿主机和外部网络都无法访问。适用于创建完全隔离的多机测试环境。

每个虚拟机最多可以配置 8 个网络适配器。你可以根据需要选择不同的模式。

7. 串行端口 (Serial Ports)

模拟串行端口,常用于连接控制台或特定硬件。

8. USB 设备 (USB)

  • 启用 USB 控制器: 启用 USB 支持。
    • USB 1.1 (OHCI) 控制器: 基本 USB 支持。
    • USB 2.0 (EHCI) 控制器: 支持 USB 2.0 设备(需要 Extension Pack)。
    • USB 3.0 (xHCI) 控制器: 支持 USB 3.0 设备(需要 Extension Pack)。
    • 为了支持大多数现代 USB 设备,请选择 USB 2.0 或 USB 3.0 控制器,并确保已安装 Extension Pack。
  • USB 设备筛选器 (USB Device Filters): 可以设置自动将特定的 USB 设备挂载到此虚拟机。连接 USB 设备后,可以在虚拟机窗口菜单栏的“设备”->“USB”中选择连接哪个设备到虚拟机。

9. 共享文件夹 (Shared Folders)

允许在宿主机和客户机之间方便地共享文件和文件夹。

  • 点击右侧的“+”按钮添加共享文件夹。
  • 共享文件夹路径: 选择宿主机上的文件夹路径。
  • 共享名: 为共享文件夹在客户机中设置一个名称。
  • 只读 (Read-only): 如果勾选,客户机只能读取文件,不能修改或删除。
  • 自动挂载 (Auto-mount): 如果勾选,虚拟机启动时会自动挂载这个共享文件夹到客户机文件系统中(需要 Guest Additions)。
  • 固定分配 (Make Permanent): 如果勾选,这个共享设置将永久保存,直到你手动移除。

注意: 共享文件夹功能必须在客户机中安装 Guest Additions 才能使用。在客户机中,共享文件夹通常会被挂载到一个特定的位置(例如 Linux 下的 /media/sf_SHARE_NAME)。

10. 用户界面 (User Interface)

自定义虚拟机窗口的菜单栏和状态栏显示项。

第五部分:虚拟机管理与高级功能

除了基本设置,VirtualBox 还提供了一系列强大的管理功能。

1. 虚拟机生命周期管理

  • 启动 (Start): 启动虚拟机。可以正常启动,或以“无界面启动 (Headless Start)”(在后台运行,没有图形界面窗口,常用于服务器虚拟机)或“可分离式启动 (Detachable Start)”(窗口可以关闭但虚拟机继续运行在后台)方式启动。
  • 暂停 (Pause): 暂停虚拟机的运行。
  • 关闭 (Close): 关闭虚拟机。有几种选项:
    • 保存虚拟电脑状态 (Save the machine state): 将当前内存、CPU 状态等保存到硬盘。下次启动时会立即恢复到这个保存点,就像电脑睡眠一样。恢复速度快。
    • 发送关机信号 (Send the shutdown signal): 模拟按下电源按钮,客户机操作系统会执行正常的关机流程。这是推荐的关闭方式。
    • 关闭电源 (Power off the machine): 直接切断虚拟机的电源,就像直接拔掉物理电脑电源插头一样。可能导致客户机操作系统数据损坏,不建议使用,除非客户机无响应。

2. 快照 (Snapshots)

快照是 VirtualBox 最有用的功能之一。

  • 创建快照: 在 VirtualBox 管理器中,选中虚拟机,点击窗口顶部的“快照 (Snapshots)”选项卡,然后点击“创建 (Take)”按钮。给快照一个名称和描述。
  • 恢复快照: 在“快照”列表中选中你想恢复的快照,点击“恢复 (Restore)”按钮。你可以选择是创建当前状态的快照(如果当前状态与快照点有差异)还是直接丢弃当前状态并恢复。
  • 删除快照: 在“快照”列表中选中快照,点击“删除 (Delete)”按钮。删除快照会移除与该快照相关联的差异硬盘文件,释放空间。注意,删除父快照可能会合并其数据到子快照或基础硬盘中,过程可能需要一些时间。
  • 快照树: VirtualBox 以树状结构管理快照。从“当前状态”恢复到某个快照点后,如果又创建了新的快照,新的快照将成为该快照点的子快照。

快照非常适合以下场景:

  • 在安装重要软件或进行有风险的系统配置更改前,先拍一个快照,如果出问题可以快速回滚。
  • 测试不同的软件或系统配置,可以快速在不同状态之间切换。
  • 在干净的系统状态下创建一个基础快照,以后需要测试时直接从这个快照开始。

3. 克隆 (Cloning)

克隆功能可以创建一个现有虚拟机的完整副本。

  • 选中虚拟机,右键点击 -> “克隆 (Clone)”。
  • 新虚拟机的名称和路径。
  • 克隆类型 (Clone type):
    • 完整克隆 (Full clone): 创建一个完全独立的虚拟机副本,拥有自己的虚拟硬盘文件。与原虚拟机没有任何关联。
    • 链接克隆 (Linked clone): 新虚拟机共享原虚拟机的部分虚拟硬盘文件(基础镜像),只存储与原虚拟机差异的部分。节省空间,但依赖于原虚拟机及其基础硬盘。如果原虚拟机或其基础硬盘被移动或删除,链接克隆将无法启动。
  • 选项 (Options): 可以选择为克隆的虚拟机生成新的 MAC 地址和唯一的虚拟机 ID (UUID)。通常建议勾选,避免网络冲突或管理混乱。

克隆适用于需要快速创建多个相同配置的虚拟机进行测试、开发或教学的场景。

4. 导入/导出 (Import/Export)

  • 导出 (Export Appliance): 将虚拟机及其配置打包成一个 OVF (Open Virtualization Format) 或 OVA (Open Virtual Appliance) 文件(OVA 实际上是 OVF 文件和相关虚拟磁盘文件的 tar 归档)。这是一种开放标准格式,方便在不同的虚拟化平台之间迁移虚拟机(如从 VirtualBox 导出,导入到 VMware 或其他支持 OVF/OVA 的平台)。
  • 导入 (Import Appliance): 从 OVA 或 OVF 文件导入虚拟机。

5. 安装增强功能包 (Guest Additions)

如前所述,Guest Additions 对提升虚拟机体验至关重要。在客户机操作系统安装完成后,务必安装它。

  1. 启动客户机虚拟机。
  2. 在虚拟机窗口的菜单栏中,选择“设备 (Devices)” -> “插入 Guest Additions CD 镜像 (Insert Guest Additions CD image…)”。 VirtualBox 会将一个虚拟的 ISO 文件挂载到客户机的虚拟光驱中。
  3. 进入客户机操作系统内部,访问虚拟光驱。
    • Windows: 虚拟光驱通常会自动弹出安装向导,如果没有,打开“我的电脑”或“此电脑”,找到光驱盘符,双击运行 VBoxWindowsAdditions-x64.exeVBoxWindowsAdditions-x86.exe
    • Linux: 文件管理器通常会自动提示打开光驱。打开光驱,找到并运行 VBoxLinuxAdditions.run (可能需要以管理员权限运行,如 sudo ./VBoxLinuxAdditions.run,并且需要安装编译内核模块所需的包,如 build-essentialkernel-devel)。或者手动挂载光驱镜像(如果没自动挂载),例如 sudo mount /dev/cdrom /mnt,然后进入 /mnt 执行安装脚本。
    • 其他系统: 参考 Guest Additions 的官方文档。
  4. 按照 Guest Additions 安装向导完成安装。
  5. 安装完成后,通常需要重启客户机操作系统。

重启后,你应该能感受到明显的变化,比如虚拟机窗口可以自由调整大小,剪贴板和拖放功能可以使用,共享文件夹可以访问等等。

第六部分:常见问题与故障排除

  • 虚拟机无法启动,提示 VT-x/AMD-V 未启用: 检查你的宿主机 CPU 是否支持硬件虚拟化,并在主板的 BIOS/UEFI 设置中确保已启用相关选项(通常在 Security 或 Advanced 或 Configuration 菜单下,查找 “Intel Virtualization Technology”, “AMD-V”, “SVM Mode”, “VT-x”, “VT-d” 等选项)。确保没有其他虚拟机软件(如 Hyper-V, VMware Workstation)在运行或已占用硬件虚拟化功能。
  • 虚拟机性能缓慢: 检查分配的内存、CPU 核心数是否足够。确认是否安装了 Guest Additions。确保宿主机有足够的空闲资源(CPU、内存、磁盘 I/O)。检查宿主机硬盘是否空间不足或碎片严重。
  • 无法安装 Guest Additions: 确保客户机操作系统是支持的。对于 Linux,需要安装编译工具和内核头文件。确认插入了正确版本的 Guest Additions CD 镜像(版本需要与 VirtualBox 本体版本匹配)。
  • 无法使用共享文件夹/共享剪贴板/拖放: 确认客户机已成功安装 Guest Additions 并重启。检查虚拟机设置中的共享文件夹配置是否正确。检查虚拟机设置中“常规”->“高级”下的共享剪贴板和拖放选项是否已启用。
  • 网络不通: 检查虚拟机网络适配器的模式配置是否正确,是否符合你的网络需求。如果是 NAT 模式,确认宿主机能够正常上网。如果是桥接模式,检查虚拟机获取的 IP 地址是否与宿主机在同一网段,以及防火墙设置。检查虚拟机内部的网络配置(IP地址、子网掩码、网关、DNS)。
  • USB 设备无法识别或挂载: 确保已安装 VirtualBox Extension Pack 且版本正确。在虚拟机设置的“USB”选项中,选择合适的 USB 控制器(通常是 USB 2.0 或 3.0)。在虚拟机运行时,通过虚拟机窗口菜单栏的“设备”->“USB”中手动勾选要连接的 USB 设备。确保你的用户账号在宿主机上具有访问 USB 设备的权限(Linux 下通常需要加入 vboxusers 用户组)。
  • 安装操作系统时无法从 ISO 启动: 检查虚拟机设置的“存储”中是否正确挂载了 ISO 文件到虚拟光驱。检查虚拟机设置的“系统”->“主板”中,“启动顺序”是否将“光驱”排在“硬盘”之前。

遇到问题时,首先查看 VirtualBox 错误提示的具体信息。其次,可以查看 VirtualBox 的日志文件(在 VirtualBox 管理器中选中虚拟机,右键点击 -> “日志”),它包含了虚拟机启动和运行过程中的详细信息,有助于定位问题。最后,查阅 VirtualBox 的官方文档或在线搜索相关错误信息,通常都能找到解决方案。

总结与展望

Oracle VirtualBox 作为一款免费、强大且易于使用的虚拟机软件,为我们在桌面环境下进行虚拟化提供了极大的便利。无论是为了学习新的操作系统、搭建隔离的开发测试环境、运行特定软件或老旧系统、安全地浏览网页和打开可疑文件,VirtualBox 都能胜任。

通过本文的介绍,你应该已经对 VirtualBox 的基本概念、安装过程、创建虚拟机、进行常用设置以及一些管理功能有了全面的了解。掌握了这些基础知识,你就可以开始你的虚拟化探索之旅了。

虚拟化是一个广阔的领域,VirtualBox 只是其中的一环。随着你使用经验的增长,你可能会进一步探索 VirtualBox 的更多高级功能,例如命令行管理工具 VBoxManage、无界面模式、实验性功能等等,或者甚至转向 Type 1 Hypervisor 以满足更高性能或企业级需求。

但无论如何,VirtualBox 提供了一个坚实的起点,让你能够在自己的计算机上构建和管理独立的虚拟计算环境,这对于提升个人技术能力、提高工作效率和安全性都具有重要的意义。现在,就动手开始创建你的第一个虚拟机吧!


发表评论

您的邮箱地址不会被公开。 必填项已用 * 标注

滚动至顶部