使用 Windows Server 的重复数据删除功能:
给定块存储中的特定块文件,是否可以确定哪些文件包含该块?
这里的用例是磁盘上不可读的块可以映射回块文件,这意味着该特定块文件中可能发生了损坏,并且我想知道哪些文件使用了该块,因此我可以手动检查这些文件是否以任何方式出现损坏,和/或假设它们已损坏并恢复它们等。
***Logical sector 4298505920 (0x10035fec0) on drive X is in file number 144581.
\System Volume Information\Dedup\ChunkStore\{F3F1DCDF-134B-4A3E-AFD5-5F698E42667A}.ddp\Data\000004ad.00000001.ccc
换句话说,我能否找出哪些文件正在使用上述块文件中的数据?
答案1
据我所知,Windows Server 的数据重复数据删除功能不提供返回使用块的文件的方法。但有几种方法可以确定是否存在任何联系:
PowerShell 和重复数据删除 Cmdlet:利用与数据重复数据删除相关的 PowerShell cmdlet。Get-DedupStatus
并Get-DedupMetadata
可能提供对重复卷和相关元数据的洞察。
Get-DedupStatus -Volume X:
Get-DedupMetadata -Path "X:\System Volume Information\Dedup\ChunkStore\{F3F1DCDF-134B-4A3E-AFD5-5F698E42667A}.ddp\Data\000004ad.00000001.ccc"
我从我手头的一个真实但古老的文档中复制了这些命令,但它有一些格式错误。你可能需要使用它们,也许可以与管道结合使用。
检查文件元数据:虽然这不会直接链接到特定的块,但它可以帮助识别与特定磁盘区域相关的文件。
Get-Item "X:\System Volume Information\Dedup\ChunkStore\{F3F1DCDF-134B-4
但事实上,在我 20 多年的 IT 知识中,我记得 Windows 中没有直接的功能适合您的方法。某种第三方应用程序也可能可以读取此类文件,但我不知道也不需要,因为 NTFS 的 DD 功能一直表现非常出色。