我目前正在检查一些通过 USB-3 磁盘盒连接的二手 2.5 英寸磁盘。第一个检查是将文件复制到磁盘上以填充它。下一个是使用chkdsk /r. 在 500GB SATA-3 磁盘上,chkdsk /r在刚格式化的空磁盘上,ETA 刚好超过一小时。但是,如果我对已满的磁盘执行 chkdsk 操作,ETA 会更长,大约 70 多个小时。
为什么会有这种差异?与可用空间相比,chkdsk 是否对已用磁盘空间进行了更深入的检查?
答案1
是的,chkdsk /r 必须对每个文件进行多次检查,并且只检查空扇区是否可读,然后继续。
交叉链接、名称违规、安全描述符、目录结构等都是针对实际文件进行检查的。它会检查每个文件的整个 MFT(主文件表)。
对于未使用的空间,这些结构均不存在。
Stage 1: Examining basic file system structure ...
416256 file records processed.
File verification completed.
Phase duration (File record verification): 12.94 seconds.
4854 large file records processed.
Phase duration (Orphan file record recovery): 0.00 milliseconds.
0 bad file records processed.
Phase duration (Bad file record checking): 1.05 milliseconds.
Stage 2: Examining file name linkage ...
189 reparse records processed.
617000 index entries processed.
Index verification completed.
Phase duration (Index verification): 21.18 seconds.
0 unindexed files scanned.
Phase duration (Orphan reconnection): 1.79 seconds.
0 unindexed files recovered to lost and found.
Phase duration (Orphan recovery to lost and found): 2.78 milliseconds.
189 reparse records processed.
Phase duration (Reparse point and Object ID verification): 2.53 milliseconds.
Stage 3: Examining security descriptors ...
Security descriptor verification completed.
Phase duration (Security descriptor verification): 24.51 milliseconds.
100373 data files processed.
Phase duration (Data attribute verification): 0.29 milliseconds.
CHKDSK is verifying Usn Journal...
39161816 USN bytes processed.
Usn Journal verification completed.
Phase duration (USN journal verification): 202.13 milliseconds.
从此列表中我们可以收集以下信息
检查基本文件系统结构...
文件记录验证
孤立文件记录恢复
已处理坏文件记录检查重新解析记录。
索引验证已扫描未编入索引的文件。
孤立的重新连接未编入索引的文件恢复至丢失和找到处。
重新分析点和对象 ID 验证
检查安全描述符...
数据属性验证正在验证 Usn Journal...
答案2
/r
查找坏扇区并恢复可读信息。磁盘必须被锁定。/r 包含 /f 的功能,并附加了对物理磁盘错误的分析。
这意味着chkdsk /r
除了执行所有其他检查之外,还要进行扇区检查,其中包括检查磁盘上所有文件夹和文件的元数据。
这意味着磁盘上的文件和文件夹越多,chkdsk 所做的工作就越多。
答案3
CHKDSK 必须检查文件是否存在错误和交叉链接。
是的,检查包含大量数据的磁盘比检查空磁盘要花费更长的时间(查看空磁盘空间不需要做太多事情)。
CHKDSK 也可以检查硬件健康状况,但您可能需要指定 /f 参数,这也需要时间。
请参见: 检查磁盘
CHKDSK /r 和 /f 之间存在一些差异