除非发现错误,否则阶段 1-4 大多是只读的,但我对阶段 5 更感兴趣,它会检查未使用的空间是否存在问题。它如何确定扇区是否坏了?它会写入未使用的空间,然后尝试将其读回吗?还是其他什么?
提问的原因:我有一块 WD Blue 1TB 硬盘,大概是 2010 年代初买的,用来存储数据。没有什么重要的东西,我不能从各个地方重新下载,或者已经在其他地方镜像了,所以我不在乎整个硬盘是否坏了。这只是我拥有的最大、最快的硬盘,所以用它作为我的“主要”数据存储设备。我最近遇到了一个问题,无法播放视频文件。在驱动器上运行 chkdsk /r 后,它发现了一个 4KB 的坏簇。这不是世界末日,只是 1TB 减去 4KB 的可用存储空间。重新下载视频文件,就完成了。
因此,我认为我应该使用简单的批处理文件和 Windows 内置的任务计划程序设置每月一次的 chkdsk /r,这样我就可以监控情况是否变得更糟。在这样做的同时,我认为我应该将它设置为在我的所有驱动器上并行运行,这样我睡觉时就可以完成所有事情。我的所有驱动器(安装 Windows 的 C: 除外)都是从旧 PC 中回收的 HDD,因为 PC 的其余部分太旧而无法正常运行,或者 PC 的其他部分出现故障。
但后来我开始思考第 5 阶段,即检查未使用的空间是否存在问题。如果它确实写入了该空白空间,然后尝试将其读回,则意味着两件事。第一,尝试使用 Recuva 或类似程序(如果需要)恢复任何已删除的文件会更加困难,因为数据会被覆盖;第二,chkdsk /r 不应在 SSD 上运行,因为第 5 阶段会更快磨损 SSD。
我的理论正确吗?我尝试查看任务管理器和资源监视器,看看它是否正在读取或写入驱动器,但我猜这些只报告文件访问,而由于没有文件被访问,这些工具报告驱动器处于空闲状态。
答案1
[... 但后来我开始思考第 5 阶段,该阶段会检查未使用的空间是否存在问题。如果它确实写入了该空白空间,然后尝试将其读回,则意味着两件事。第一,尝试使用 Recuva 或类似程序(如果需要)恢复任何已删除的文件会更加困难,因为数据会被覆盖;第二,chkdsk /r 不应在 SSD 上运行,因为第 5 阶段会更快磨损 SSD。
我的理论正确吗? ...]
不可以。只要还有一些备用扇区,写入损坏扇区就会触发写入备用扇区,因此将内容写入未使用的簇并尝试重新读取并不是正确的策略。只需要读取,因为与写入事务不同,驱动器的底层固件无法影响操作结果。
如果您不相信我和那些假装这不是“正确答案”的人,请阅读此处:
https://web.archive.org/web/20080106183532/http://technet.microsoft.com/en-us/library/bb457122.aspx