服务器 频道

Windows 7虚拟化硬盘之常见问题

  有关 VHD 文件类型的问题

  VHD 文件有哪些不同的类型?

  VHD 文件分为三种类型,可以使用 Hyper-V 管理器或在 Windows 7 中使用 Windows 磁盘管理工具创建这些文件类型:

  1. 固定 VHD。固定 VHD 文件被分配的虚拟磁盘大小为创建 VHD 时指定的虚拟磁盘大小。 例如,如果创建的虚拟硬盘大小为 2 GB,系统将创建一个大小约 2 GB 的文件,其中部分空间用于内部 VHD 结构。 固定 VHD 的大小不会随着向虚拟硬盘写入数据而变化。

  2. 可扩展或动态 VHD。在任何给定时间,可扩展或动态 VHD 文件的大小均与写入该文件的实际数据大小相同。 随着写入更多的数据,该文件也会动态增加。 例如,支持 2 GB 虚拟硬盘的文件最初在主机文件系统中的大小约为 2 MB。 随着不断向此虚拟硬盘中写入数据,文件逐渐增大,直到达到 2 GB 的容量上限。

  3. 差异 VHD。差异 VHD 类似于动态 VHD,但只包含相关父虚拟磁盘的修改后的虚拟磁盘块。 差异 VHD 链接到特定的父 VHD,称为子 VHD。 父 VHD 文件为只读文件;所有修改都是针对子 VHD 进行的。 父 VHD 的 VHD 文件类型可以是这三种 VHD 类型中的任意一种,包括另一个差异 VHD。 多个子 VHD 文件可形成一个差异链。

  为什么建议将固定 VHD 文件用于生产中?

  建议将固定 VHD 文件用于生产的原因如下:

  " 由于不需要动态扩展 VHD 文件,因此 I/O 性能是三种 VHD 磁盘类型中最高的。 同时,如果向固定 VHD 文件进行写入操作,不会因为动态 VHD 要求扩展而使 VHD 文件的基础主机卷用完所有可用磁盘空间而失败。

  " 动态和差异 VHD 文件取决于多个数据写入操作以及内部块分配信息,如果未完成主机卷和物理磁盘上 VHD 文件的所有 I/O 操作并且未将其保存在物理磁盘上,这些信息可能会变得不一致。 当基础磁盘用完全部存储空间或系统突然断电时,便可能会出现这种情况。

  什么时候适用于使用动态或扩展 VHD 文件?

  动态 VHD 在以下非生产环境中使用 Windows 映像时非常有用:存储要求较低,并且与 VHD 中数据访问的可靠性相比,替换 VHD 文件的便利性更具有优势。 例如,测试环境可以将许多动态 VHD 存储在网络共享中以节省空间,无需分配固定 VHD 格式情况下类似映像中未使用部分所需的存储空间。 通常,测试环境可以轻松重建,也可以重新生成用于测试的 VHD 映像。 将较小的动态 VHD 文件从网络共享复制到本地磁盘时,速度比传输同等最大大小的固定 VHD 文件更快。 如果能够从其他资源重新生成动态 VHD 的全部内容,并且关键数据存储在动态 VHD 以外的其他卷中,则可以考虑在生产环境中使用动态 VHD。

  当子级差异 VHD 的父 VHD 更改时会出现什么情况?

  子级差异 VHD 包含特定父 VHD 中的修改后的数据块。 如果父 VHD 发生更改或替换为具有相同文件名的其他 VHD 文件,则父 VHD 和子 VHD 之间的块结构将不再匹配,并且子 VHD 的内容也会破坏。

  差异 VHD 的父级是否可以位于与子级不同的卷或远程共享上?

  对于本机 VHD 启动,子级差异 VHD 到父 VHD 文件的链接要求这两个文件位于同一个卷中。 即使父磁盘和子磁盘驻留在同一本地磁盘,也无法驻留在不同的卷中。 附加本机 VHD 启动之外的 VHD(如映像管理操作)时,差异磁盘的父级可以位于其他卷甚至是远程共享中。

  "创建 VHD"和"附加 VHD"有哪些功能?

  磁盘管理工具(DiskPart 命令行工具和磁盘管理控制台)都支持创建、附加和分离操作。 "创建 VHD"能够按照选项指定的类型和大小创建新的 .vhd 文件。 可以将新创建的 .vhd 文件看作与原始磁盘类似。 "附加 VHD"操作要求存储系统将 VHD 用作连接到系统的磁盘。 在执行"附加 VHD"操作后,可以使用磁盘管理工具在 VHD 内创建一个或多个磁盘分区,并在 VHD 内格式化 NTFS 文件系统。 如果在执行"附加 VHD"操作时,VHD 已有磁盘分区和文件系统卷,则系统会给 VHD 内的卷分配一个驱动器号,并且该卷将处于可用状态,这与您向 USB 连接器中插入 USB 磁盘驱动器时出现的情况类似。 "附加 VHD"有时称为"显示 VHD",这是因为 VHD 中的文件系统会被分配一个驱动器号并且显示出来,而且可供使用。 (也许可以将显示 VHD 比喻为潜水艇浮出水面并且可以看到。)

  执行"附加 VHD"操作后,系统将为 VHD 中的所有卷分配驱动器号,并且使其在全局命名空间中可见。 是否可以看到附加的 VHD 卷并不限于当前用户上下文。 所有用户都能够看到附加的 VHD,就像查看物理磁盘一样。 VHD 只能由拥有卷管理权限的用户(默认情况下仅授予管理员)附加,因为附加磁盘相当于使磁盘或卷联机。

  VHD 可以使用哪些文件系统?

  如果已有一个 .vhd 文件,则可以将该 .vhd 文件保存在任何 FAT、ExFAT、NTFS 或 UDFS 卷中。 但是,只能附加位于 NTFS 卷的 VHD。 对非 NTFS 卷上的 VHD 执行附加操作将失败。

  创建 VHD 时,可以在 VHD 中创建一个或多个分区,并且可以使用 FAT、ExFAT 或 NTFS 格式化这些分区。 附加操作可使 VHD 中的一个或多个卷可用。

  Windows 7 是否可以附加位于远程共享的 VHD?

  是的,可以附加位于远程 SMB 共享的 VHD 文件,并且该 VHD 文件将显示为本地磁盘。 不支持其他远程文件系统,如 NFS 或 FTP。 系统将为包含在 VHD 中的卷分配驱动器号,并且这些卷可供本地系统中的所有用户访问,具体取决于 VHD 卷内数据的安全权限。 远程 VHD 附加支持远程映像管理。

  是否可以对 VHD 文件使用 NTFS 压缩或加密?

  在主机卷上用 NTFS 压缩的 VHD 文件将无法作为虚拟硬盘附加。 在主机卷上用加密文件系统 (EFS) 加密的 VHD 文件也无法作为虚拟硬盘附加。 在主机卷上压缩或加密的 VHD 文件将无法用于 VHD 本机启动。 但是,如果提供其他支持,则 VHD 内的卷可以使用压缩和加密。

  是否可以使用 BitLocker 加密整个 VHD?

  VHD 文件可以保存在受 BitLocker 保护的主机卷上,但是位于 BitLocker 保护卷上的 VHD 文件无法用于本机启动。   对包含在 VHD 内的卷启用 BitLocker 不是支持的配置。

  什么是嵌套 VHD 以及什么是嵌套限制?

  VHD 是主机卷上的文件。 例如,VHD 文件 c:\vhd\ExampleFixed.vhd 表示位于 c: 卷上 \vhd 目录下的固定 VHD 文件。 在 ExampleFixed.vhd 中,可以创建一个分区,初始化 NTFS 文件系统卷,然后临时分配驱动器号 m:。 还可以在 m:\vhd\AnestedFixed.vhd 下创建一个新的 VHD 文件。 第二个 vhd 文件是在第一个 vhd 文件中的文件系统卷上创建的。 这就是嵌套 VHD。 对 c:\vhd\ExampleFixed.vhd 执行"附加 VHD"操作将使 m: 卷可用。 而对 m:\vhd\AnestedFixed.vhd 执行"附加 VHD"操作将使另一个卷(例如 "n:")可用。 最多只能附加 2 层嵌套 VHD。这意味着,可以在另一个附加 VHD 内再附加一个 VHD。 但是,如果在另一个已经是另一个附加 VHD 的附加 VHD 中附加 VHD,则会失败。

  是否可以将两个附加 VHD 配置为动态磁盘?

  动态磁盘是一种针对动态存储初始化的磁盘,它包含动态卷,如简单卷、跨区卷、带区卷、镜像卷或 RAID-5 卷。 附加的 VHD 不能配置为动态磁盘。

 

  有关本机 VHD 启动的问题

  什么是本机 VHD 启动?

  从 VHD 文件本机启动意味着,可以在物理计算机上启动包含在 VHD 文件中的 Windows 映像,而无需虚拟机监控程序或虚拟机 (VM)。 VHD 文件通常与虚拟机关联,因为在以前的 Windows 版本中,VHD 文件是安装 Windows 版本的虚拟硬盘,而该硬盘连接到运行 Windows 的虚拟机。 启动 VHD 中的 Windows 映像要求使用虚拟机。 现在,Windows 7 和 Windows Server 2008 R2 具有从 VHD 文件进行本机启动的功能,并且拥有对物理计算机上的所有可用设备和文件系统卷的完全访问权限,无需其他 VM 支持。

  本机 VHD 启动是否有任何固件要求?

  平台固件将在启动过程中枚举 Windows 引导管理器可用的物理硬盘设备。 Windows 引导管理器将同时启动本机 VHD 引导过程和正常引导过程。 为本机 VHD 启动配置的 VHD 文件必须驻留在固件枚举的物理设备上。 在具有 BIOS 或 UEFI 固件的平台上支持本机 VHD 启动。

  Windows Vista 或 Windows Server 2008 是否也可以支持 VHD 本机启动?

  Windows Vista、Windows Server 2008 和以前的版本都不支持 VHD 本机启动,它们需要虚拟机才能从 VHD 启动。 从 VHD 本机启动要求对核心操作系统进行重大更改。 VHD 本机启动所需的操作系统功能是 Windows 7 中的新增功能。

  哪些类型的 VHD 文件可以用于本机 VHD 启动?

  本机 VHD 启动支持全部三种 VHD 文件类型:固定 VHD、动态 VHD 和差异 VHD。 VHD 文件必须位于本地磁盘上,不能从远程共享启动。 建议将固定 VHD 用于生产系统。 动态和差异 VHD 可用于开发和测试系统。 从动态 VHD 启动时,VHD 文件会在启动期间自动扩展到最大大小。 如果 VHD 文件的物理主机卷没有足够的可用磁盘空间,无法容纳动态 VHD 的最大大小,则启动过程将失败。 差异磁盘的父级和子级必须位于同一本地卷中。

  使用本机 VHD 启动时可用的卷与从虚拟机启动时可用的卷之间是否有区别?

  Windows 在虚拟机中运行时,虚拟磁盘中通常只有一个文件系统卷(即 c: 卷)可用于来宾计算机。 物理计算机上的所有其他卷都不可用,除非它们已与虚拟机明确共享。 使用本机 VHD 启动,附加物理和虚拟磁盘上的所有卷(包括 VHD 内的卷)都可用于 Windows。 包含在 VHD 中的启动卷将会自动附加。 在 Windows 7 试用版中,包含用于 VHD 启动的启动环境的系统卷未分配驱动器号。 管理员可以使用磁盘管理工具向该系统卷分配驱动器号,从而使该系统分区可用。

  VHD 中是否支持使用页面文件,以及是否不会影响使用本机 VHD 启动的系统的性能?

  Windows 不支持在附加 VHD 的虚拟磁盘上查找页面文件。 这些文件包括 pagefile.sys、休眠文件和故障转储文件。 如果页面文件位于 VHD 内,本机 VHD 启动的性能将不会达到系统响应目标。 如果使用本机 VHD 启动启动 Windows 7,则操作系统将查找主机卷上除 VHD 文件外的空间,以便供页面文件使用。 页面文件的大小约为 2 到 4 GB 或更大,具体取决于系统中配置的物理 RAM 内存大小。 规划主机卷的可用磁盘空间,以支持本机 VHD 启动所需的 VHD 文件和页面文件。 如果 VHD 的主机卷没有足够的可用空间用于存放页面文件,则 Windows 会尝试将页面文件保存到其他拥有足够可用空间的卷中。 请注意,如果 Windows 在 Hyper-V 虚机机中运行,将在 VHD 中创建页面文件,这是因为此时虚拟磁盘用作正常的系统卷。

  本机 VHD 启动是否支持休眠?

  不支持,因为 Windows 无法在 VHD 中创建休眠所需的 hiberfil.sys 文件。 对于 本机 VHD 启动映像,Windows 启动管理器不支持从休眠中恢复。 本机 VHD 启动主要以服务器部署为目标,在这些情况下,休眠功能并不是关键的功能要求。

  以前附加的 VHD 文件是否会在本机 VHD 启动期间自动附加?

  只有包含在 VHD 文件的文件系统分区(从这里启动系统)能够自动附加并使虚拟卷可见。 如果物理卷上还有在上一个启动期间附加的其他 VHD 文件,这些文件将不会自动附加。

  是否建议将关键用户或应用程序数据存储在用于本机启动的 VHD 文件中?

  使用本机 VHD 启动启动 Windows 时,Windows 自动系统恢复不会在系统的裸机还原期间重新创建 VHD。 因此,不建议将关键应用程序和用户数据存储在用于本机启动的 VHD 文件中。 如果关键应用程序或用户数据存储在包含 Windows 启动映像的 VHD 以外,则当 VHD 映像不再可用时,更容易恢复数据。

  是否可以将用于本机启动的 VHD 文件存储在包含其他数据的主机卷中?

  只要主机卷上的数据不需要备份下,便可以将用于本机启动的 VHD 存储在包含其他数据的同一个卷中。 到时,如果主机卷上的数据需要进行备份,则强烈建议不要将 VHD 启动映像存储在该分区中。 Windows 不提供对在同一备份集中同时备份主机卷和附加 VHD 卷的本机支持。 有关附加 VHD 中卷的其他备份支持问题,将在本文档的稍后部分介绍。

  Windows 7 是否可以从位于 USB 磁盘驱动器的 VHD 启动?

  Windows 7 不支持将操作系统安装在可移动的 USB 磁盘设备,也不支持从可移动的 USB 磁盘设备启动。 尽管 VHD 文件可以保存在 USB 磁盘设备中,但系统无法启动可移动设备上的 VHD。 Windows 预安装环境 (WinPE) 是一个例外,它支持 USB 启动,它是专为部署和服务方案而设计的。 但是,从 VHD 文件启动 WinPE 并未经过认证或支持。

  是否可以将用于本机启动的 VHD 文件复制到另一台计算机,并在该计算机上重新启动该文件?

  在新平台上首次使用本机 VHD 启动启动系统时,用于本机 VHD 启动的 Windows 映像必须处于通用化状态。 从 VHD 首次启动时,Windows 将完成 specialize 配置阶段,以检测硬件设备并首次初始化 Windows。 specialize 是在计算机中进行典型 Windows 安装时会执行的步骤之一。 向其他计算机复制 VHD 之前,需要先使用 sysprep 命令生成配置。 sysprep generalize 能够更新设备配置状态并准备 Windows 映像,以便使该映像能够在其他计算机上启动。 Windows 映像的部署准备工作将在用于 Windows 7 测试版的 Windows 自动安装工具包中进行介绍。 包含经过 generalize 处理的 Windows 映像的 VHD 可用作一个主体,并且能够复制到多个物理计算机或虚拟机进行 VHD 启动。

 

  有关对附加 VHD 中卷的备份支持问题

  是否可以为 VHD 中的文件使用现有备份软件?

  现有的备份和还原软件可能不支持备份或还原包含在附加 VHD 中的卷。 承载 VHD 文件的物理卷,以及可供附加 VHD 用于系统的卷的存储配置必须谨慎规划,以便正确备份这些卷上的数据。 下列示意图演示了 VHD 文件的主(或父级)卷 C: 和执行附加操作后 VHD 中的文件系统卷 D: 之间关系的一个示例。 在该示例中,主机卷拥有 vhd 文件的目录。 VHD 文件 example.vhd 包含 Windows 7 映像。

物理磁盘与虚拟磁盘

物理磁盘

虚拟磁盘

主机卷 C:

D:

文件系统

\Vhd\example.vhd

\Windows

  附加 VHD 卷 D:(来宾卷)是否可以包含在与主机卷 C: 相同的卷快照集中?

  如果未附加 vhd 文件 Example.vhd,卷快照可以备份主机卷 C: 并包含主机卷中的 example.vhd 文件和其他数据。 但是,附加 Example.vhd 可使虚拟卷 D: 可用。 如果已附加 Example.vhd,主机卷 C: 的快照将无法正确备份该文件的内容。 已附加 VHD 的主机卷快照会导致 VHD 文件及其关联虚拟卷的快照映像不一致。 VHD 驱动程序不参与快照创建过程。 已附加 VHD 文件的物理卷的硬件或软件快照可能会导致快照上捕获的 VHD 文件和虚拟卷处于不一致状态。 在快照期间,虚拟卷中的缓存数据不会刷新到主机卷,从而导致 VHD 处于不一致的状态。

  不支持 VHD 文件的来宾卷和主机卷快照位于同一快照集中。 如果快照集同时包含来宾卷及其主机卷,则虚拟来宾卷的快照将失败。 此限制能够防止创建同时包含虚拟卷和主物理卷的数据集的时间点映像。

  在备份应用程序不感知 VHD 的情况下,若要对包含 VHD 中的虚拟卷的系统进行完整系统备份,有什么建议的方法?

  对于使用不感知 VHD 的备份应用程序进行完整的系统备份,强烈建议在启动备份操作之前分离所有已附加的 VHD。 这是因为 Windows 不提供对同时备份主机卷和来宾 VHD 卷的本机支持。

  在上述示例中,应在卷影复制 C: 之前分离 Example.vhd。 然后将 Example.vhd 从 C: 的卷影副本复制到备份媒体。 如果对 C: 进行卷影复制时 Example.VHD 仍然处于附加状态,可能会导致在 C: 的快照上捕获的 Example.vhd 的映像不一致,原因是:

  1. VHD 驱动程序没有参与快照创建,从而导致部分元数据可能不一致

  2. 卷 D: 中的文件系统元数据没有刷新到磁盘,因此在从卷影副本安装该卷时可能会出现不一致的情况。

  若要备份附加 VHD 中的数据或系统映像,有什么建议的方法?

  备份 VHD 的建议方法是备份与该 VHD 关联的主机卷。 若要备份存储在主机卷上的所有附加 VHD,必须在执行备份/克隆操作之前分离这些 VHD。 如果未分离这些 VHD,可能会导致备份中的 VHD 副本不一致。 备份主机卷中的 .vhd 文件后,还原过程便很简单,因为备份中的 VHD 完全一致。 在还原主机卷后,若要获取虚拟卷数据,只需附加 VHD 文件即可。 如果虚拟磁盘用于存储用户数据,则因为与创建来宾卷快照关联的限制,请谨慎规划来宾卷的使用。

  如果选择使用 VHD 容纳必须备份的数据,有哪些需要了解的非常好的做法?

  由于无法对同一快照集中的主机卷和 VHD 卷同时执行卷影复制,因此强烈建议不应将主机卷本身用于存储任何需要备份的数据。

  这样可以显著简化备份操作,因为系统中的所有数据可以捕获到单个快照集中,无需在备份和/或卷影复制各个阶段所需的卷之前分离 VHD。

  若要备份附加 VHD 中的单个文件或目录,有什么建议的方法?

  在上述示例中,在快照集中包含卷 D,同时确保 C: 未包含在快照集中。 然后,如果处理任何其他卷一样,根据需要从 D: 的快照中备份文件或目录。

  虚拟卷的卷影副本存储空间是否可以驻留在其他卷中?

  卷影副本存储空间用于存储与快照有关的更改信息,可配置为位于除快照源卷以外的其他卷中。 但是,虚拟卷的卷影副本存储空间必须驻留在同一个虚拟卷中。

  虚拟卷不能用作另一个卷的卷影副本存储空间的目标卷。 虚拟卷只能包含与自身的快照相关的卷影副本存储空间。

 

0
相关文章