我家停电了,我的计算机硬盘驱动器的文件系统被损坏。
检查了系统文件和硬件,没有发现问题。但我做了一件愚蠢的事情,chkdsk /f X:
首先运行它,它发现并删除了 16659 个文件中损坏的属性记录。
现在我认为所有这些文件可能都已损坏。
我获得了“System Volume Information”文件夹的所有权,并在 Chkdsk 文件夹中找到了完整的日志。
我使用 nfi.exe 从扇区号中获取受影响的文件。我正在尝试编写一个程序asyncio.create_subprocess_exec
来执行此操作。
但首先我想了解nfi.exe
.
PS C:\Users\Xeni> D:\downloads\nfi\nfi.exe D: 0x9379dc5
NTFS File Sector Information Utility.
Copyright (C) Microsoft Corporation 1999. All rights reserved.
***Logical sector 154639813 (0x9379dc5) on drive D is in file number 551312.
\Games\Saints Row 4\packfiles\pc\cache\dlc3.vpp_pc
$STANDARD_INFORMATION (resident)
$FILE_NAME (resident)
$FILE_NAME (resident)
$DATA (nonresident)
logical sectors 154625064-154690687 (0x9376428-0x938647f)
输出是什么意思?什么是$DATA (nonresident)
?这是否意味着元数据和文件名被保留,但文件的数据消失了,该文件是“幽灵文件”?
我尝试用谷歌搜索"$DATA (nonresident)"
,但完全没有发现它的含义。
维基百科NTFS对此进行了解释 :
nfi.exe
列出 NTFS 属性。居民是指来自MFT,非居民是指来自属性本身。