硬链接迁移存储

硬链接迁移存储允许在删除旧操作系统并安装新操作系统时在计算机上维护所有用户状态的情况下执行就地迁移。 此功能使 硬链接迁移存储 最适合计算机刷新方案。 对计算机刷新方案使用硬链接迁移存储可显著提高迁移性能,并显著降低硬盘利用率、降低部署成本并实现全新的迁移方案。

当计划的迁移满足以下两个条件时,可以使用硬链接迁移存储:

  • 操作系统正在现有硬件上升级,而不是迁移到新计算机。

  • 操作系统正在计算机的同一卷上升级。

如果计划的迁移包括以下任一任务,则无法使用硬链接迁移存储:

  • 数据正在从一台计算机迁移到另一台计算机。

  • 数据正在从计算机上的一个卷迁移到同一计算机上的另一个卷,例如从 C: 迁移到 D:

  • 包含迁移存储的磁盘正在对 Windows 安装程序外部或 Windows 安装过程中的磁盘进行格式化或重新分区。

硬链接迁移存储使用命令行选项 创建, /hardlink并且等效于其他迁移存储类型。 但是,它的不同之处在于,在迁移期间,使用硬链接来保留存储在源计算机上的文件。 在源计算机上保留文件可消除重复文件的冗余工作。 它还可实现定义此方案的性能优势和磁盘利用率的降低。

创建硬链接后,现有文件将多提供一个路径。 例如,可以创建名为 c:\file1.txtc:\hard link\myFile.txt硬链接。 这两个路径与同一个文件相关。 如果 c:\file1.txt 打开,然后对文件进行了更改,然后保存文件,则打开时 c:\hard link\myFile.txt 会看到这些更改。 如果 c:\file1.txt 删除 ,则文件仍以 的形式 c:\hardlink\myFile.txt存在于计算机上。 必须删除对文件的两个引用才能删除该文件。

注意

只能为同一卷上的文件创建硬链接。 如果将硬链接迁移存储复制到另一个驱动器或外部设备,则会复制文件(而不是链接),就像在非压缩迁移存储方案中一样。

有关硬链接的详细信息,请参阅 硬链接和接合点

在大多数方面,硬链接迁移存储与未压缩的迁移存储相同。 硬链接迁移存储按 ScanState.exe 命令行工具指定的位置。 可以使用 Windows 资源管理器查看应用商店的内容。 创建后,无需更改用户状态即可将其删除或复制到其他位置。 还原硬链接迁移存储类似于还原任何其他迁移存储。 但是,与创建存储一样,使用相同的硬链接功能来保留文件。

最佳做法是在确认文件已通过 LoadState 工具成功迁移后删除硬链接迁移存储。 由于 LoadState 会在新安装 Windows 操作系统时创建文件的新路径,删除迁移存储中的硬链接只会删除文件的一个路径。 它不会从新操作系统中删除实际文件或路径。

重要提示

/c使用 选项可强制 LoadState 工具在发生非严重错误时继续应用文件。 如果使用了 /c 选项,请在删除硬链接迁移存储之前,验证日志中是否未报告任何错误,以避免数据丢失。

保留硬链接迁移存储可能会导致占用额外的磁盘空间或某些应用程序出现问题,原因如下:

  • 报告文件系统统计信息的应用程序(例如,已用空间和可用空间)可能会在硬链接迁移存储存在时错误地报告这些统计信息。 由于引用该文件的两个路径,该文件可能会报告两次。

  • 硬链接可能会失去与原始文件的连接。 某些应用程序通过创建临时文件,然后将原始文件重命名为备份文件名来保存对文件的更改。 未用于在此应用程序中打开文件的路径继续引用未修改的文件。 未使用的未修改文件占用更多磁盘空间。 应在执行迁移之前创建硬链接迁移存储。 创建存储后,不应使用应用程序来确保所有文件的最新版本正在迁移。

  • 同时使用不同的路径编辑文件可能会导致数据损坏。

重要提示

删除硬链接迁移存储时,迁移文件上的只读文件属性将丢失。 这是由于 NTFS 文件系统硬链接的限制。

例如,组织决定在其所有计算机上部署最新受支持的 Windows 版本。 每个员工都保留同一台计算机,但每台计算机上的操作系统将更新。

  1. 管理员在每台计算机上运行 ScanState 命令行工具,并 /hardlink 指定命令行选项。 ScanState 工具将用户状态保存到每台计算机上的硬链接迁移存储,通过减少文件重复来提高性能,但某些特定实例除外。

    注意

    作为最佳做法,Microsoft 建议在执行迁移之前不要创建硬链接迁移存储,以便迁移最新版本的文件。 在使用 LoadState 完成文件迁移之前,创建迁移存储后,不应在计算机上使用软件应用程序。

  2. 在每台计算机上,管理员 (SOE) 安装组织的标准操作环境,其中包括最新受支持的 Windows 版本以及组织当前使用的其他应用程序。

  3. 管理员在每台计算机上运行 LoadState 命令行工具。 LoadState 工具在每台计算机上还原用户状态。

注意

在更新已加入域的计算机期间,不会迁移无法解析其 SID 的用户的配置文件。 使用硬链接迁移存储时,可能会导致数据丢失。

本部分提供有关硬链接迁移存储的详细信息。

硬盘空间

/hardlink仅当硬盘上的可用空间为 250 MB () MB 时,命令行选项才会继续创建迁移存储。 如果迁移涉及的每个卷都格式化为 NTFS,则 250 MB 的空间应足以确保几乎每个硬链接迁移都成功,而不管迁移的大小如何。

不需要估计硬链接迁移存储的大小,因为 NTFS 卷上的硬链接迁移存储相对较小,并且需要比其他存储选项少得多的增量空间。 仅当迁移存储很大时,估算迁移存储的大小才有用。 通过硬链接迁移,本地存储可能很大的唯一情况是:

  • 系统上存在非 NTFS 文件系统。
  • 非 NTFS 文件系统包含需要迁移的数据。

由于 NTFS 是当前支持的所有 Windows 版本的默认文件系统格式,因此这种情况并不常见。

多个卷上的迁移存储路径

在包含要迁移的数据的每个 NTFS 卷上创建单独的硬链接迁移存储。 在此方案中,主迁移存储位置在命令行上指定,应为操作系统卷。 在包含要迁移的数据的每个卷上创建具有相同名称和目录名称的迁移存储。 例如:

ScanState.exe /hardlink c:\USMTMIG […]

在包含 C: 驱动器上的操作系统和 D: 驱动器上的用户数据的系统上运行此命令会在以下位置生成迁移存储,前提是这两个驱动器都是 NTFS:

C:\USMTMIG\

D:\USMTMIG\

在命令行上为硬链接迁移存储指定的驱动器非常重要,因为它定义了 主迁移存储 的放置位置。 主迁移存储区是存储从非 NTFS 卷迁移的数据的位置。 此卷必须有足够的空间来包含来自非 NTFS 卷的所有数据。 与其他方案一样,如果迁移存储已存在于指定路径上, /o 则必须使用 选项覆盖存储区中的现有数据。

位置修改

将迁移内容从一个卷重定向到另一卷的位置修改会对硬链接迁移的性能产生不利影响。 性能受到影响,因为必须跨系统卷的迁移数据不能保留在硬链接迁移存储中。 必须跨系统卷复制它们。

迁移加密文件系统 (EFS) 证书和文件

若要将加密文件系统 (EFS) 文件迁移到计算机同一卷上的操作系统的新安装,请在命令行语法中ScanState.exe指定 /efs:hardlink 选项。

如果要将 EFS 文件还原到其他分区, /efs:copyraw 则应使用 选项而不是 /efs:hardlink 选项。 只能为同一卷上的文件创建硬链接。 在迁移过程中将文件移动到另一个分区需要在新分区上创建文件的副本。 选项 /efs:copyraw 以加密格式将文件复制到新分区。

有关详细信息,请参阅 迁移 EFS 文件和证书加密文件选项

当应用程序或操作系统锁定文件时,使用硬链接迁移存储时,会以不同的方式处理该文件。

操作系统锁定的文件不能保留到位,必须复制到硬链接迁移存储中。 因此,选择许多操作系统文件进行迁移会显著降低硬链接迁移期间的性能。 作为最佳做法,Microsoft 建议不要从目录中迁移任何文件 \Windows ,从而最大程度地减少与性能相关的问题。

在硬链接迁移中,应用程序锁定文件的处理与未使用卷影复制服务的其他方案相同。 卷影复制服务不能用于硬链接迁移。 但是,通过修改文件中新的 <HardLinkStoreControl>Config.xml ,可以启用应用程序锁定的文件的迁移。

重要提示

在某些情况下,修改文件中的 <HardLinkStoreControl> 部分 Config.xml 会使删除硬链接迁移存储更加困难。 在这些方案中, UsmtUtils.exe 必须使用 来计划下次重启时删除的迁移存储。

Config.xml 文件中的 XML 元素

文件中的新部分 Config.xml 允许对随 选项引入的一些硬链接迁移行为进行 /HardLink 可选配置。

元素 描述
<策略> 此元素包含描述 USMT 在创建迁移存储时遵循的策略的元素。
<HardLinkStoreControl> 此元素包含描述在创建硬链接迁移存储期间如何处理文件的元素。
<fileLocked> 此元素包含描述如何处理锁定以供编辑的文件的元素。
<createHardLink> 此元素定义一个标准 MigXML 模式,该模式描述应在其中创建硬链接的文件路径,即使该文件已锁定以供其他应用程序编辑也是如此。

语法: <createHardLink> [pattern] </createHardLink>
<errorHardLink> 此元素定义标准 MigXML 模式,该模式描述不应创建硬链接的文件路径(如果文件被锁定以供其他应用程序编辑)。

<errorHardLink> [pattern] </errorHardLink>

重要提示

选项 /nocompress 必须与 选项一起使用 /HardLink

以下 XML 示例指定在迁移过程中,由目录下 \Users 的应用程序锁定的文件可以保留到位。 它还指定未位于 \Users 目录中的锁定文件应导致 “文件正在使用 ”错误。 使用 <createhardlink> 标记指定路径时请务必谨慎,以便尽量减少使硬链接迁移存储更难删除的方案。

<Policies>
    <HardLinkStoreControl>
          <fileLocked>
            <createHardLink>c:\Users\* [*]</createHardLink>
            <errorHardLink>C:\* [*]</errorHardLink>
          </fileLocked>
    </HardLinkStoreControl>
</Policies>