ReFSUtil

适用范围:Windows Server 2022、Windows Server 2019、Windows 10

ReFSUtil 是包含在 Windows 和 Windows Server 中的一个工具,该工具尝试诊断严重损坏的 ReFS 卷、识别剩余文件,并将这些文件复制到另一个卷。 该工具位于 %SystemRoot%\System32 文件夹中。

ReFS salvage 是 ReFSUtil 的主要功能,对于从在磁盘管理中显示为 RAW 的卷恢复数据非常有用。 ReFS Salvage 有两个阶段:扫描阶段和复制阶段。 在自动模式下,扫描阶段和复制阶段将按顺序运行。 在手动模式下,每个阶段都可以单独运行。 进度和日志保存在工作目录中,以允许单独运行阶段以及暂停和恢复扫描阶段。 除非卷为 RAW,否则不必使用 ReFSutil 工具。 如果为只读,则仍可访问数据。

参数

参数 说明
<source volume> 指定要处理的 ReFS 卷。 驱动器号必须格式化为“L:”,或者必须提供卷装入点的路径。
<working directory> 指定要存储临时信息和日志的位置。 它不得位于 <source volume> 上。
<target directory> 指定将标识的文件复制到的位置。 它不得位于 <source volume> 上。
-m 恢复所有可能的文件,包括已删除的文件。

警告:此参数不仅会导致进程运行的时间变长,还可能会导致意外结果。

-v 指定此项以使用详细模式。
-x 首先强制该卷卸载(如有必要)。 所有指向该卷的打开的句柄将无效。 例如 refsutil salvage -QA R: N:\WORKING N:\DATA -x

使用情况和可用选项

快速自动模式

执行快速扫描阶段,然后执行复制阶段。 此模式运行速度更快,因为它假定卷的某些关键结构未损坏,因此无需扫描整个卷来查找它们。 这也减少了过时文件/目录/卷的恢复。

refsutil salvage -QA <source volume> <working directory> <target directory> <options>

全自动模式

执行完全扫描阶段,然后执行复制阶段。 此模式可能需要很长时间,因为它会扫描整个卷以查找任何可恢复的文件/目录/卷。

refsutil salvage -FA <source volume> <working directory> <target directory> <options>

诊断阶段(手动模式)

首先,尝试确定 <source volume> 是否为 ReFS 卷,并确定该卷是否可装载。 如果卷不可装载,则会提供原因。 这是一个独立的阶段。

refsutil salvage -D <source volume> <working directory> <options>

快速扫描阶段

对任何可恢复文件执行 <source volume> 的快速扫描。 此模式运行速度更快,因为它假定卷的某些关键结构未损坏,因此无需扫描整个卷来查找它们。 这也减少了过时文件/目录/卷的恢复。 发现的文件将记录到位于 <working directory> 中的 foundfiles.<volume signature>.txt 文件。 如果先前停止了扫描阶段,则再次使用 -QS 标志运行会从中断的位置恢复扫描。

refsutil salvage -QS <source volume> <working directory> <options>

完全扫描阶段

扫描整个 <source volume> 以查找任何可恢复文件。 此模式可能需要很长时间,因为它会扫描整个卷以查找任何可恢复文件。 发现的文件将记录到位于 <working directory> 中的 foundfiles.<volume signature>.txt 文件。 如果先前停止了扫描阶段,则再次使用 -FS 标志运行会从中断的位置恢复扫描。

refsutil salvage -FS <source volume> <working directory> <options>

复制阶段

foundfiles.<volume signature>.txt 文件中所述的所有文件复制到 <target directory>。 如果过早地停止扫描阶段,则 foundfiles.<volume signature>.txt 文件可能尚不存在,因此不会将任何文件复制到 <target directory>

refsutil salvage -C <source volume> <working directory> <target directory> <options>

使用列表的复制阶段

<file list> 中的所有文件从 <source volume> 复制到 <target directory><file list> 中的文件必须先由扫描阶段标识,但扫描无需运行到完成。 可以通过将 foundfiles.<volume signature>.txt 复制到新文件、删除引用不应还原的文件的行以及保留应还原的文件来生成 <file list>。 PowerShell cmdlet Select-String 可能有助于筛选 foundfiles.<volume signature>.txt,以便仅包含所需的路径、扩展或文件名。

refsutil salvage -SL <source volume> <working directory> <target directory> <file list> <options>

使用交互式控制台的复制阶段

高级用户可以使用交互式控制台补救文件。 此模式还需要从任一扫描阶段生成的文件。

refsutil salvage -IC <source volume> <working directory> <options>