Answers:
我曾经遇到过的测试硬盘坏道的最佳工具称为SpinRite:
SpinRite 6
http://www.grc.com/sr/spinrite.htm
它是由史蒂夫·吉布森(Steve Gibson,他在Assembler中编写大部分代码)创建的,我记得在1980年代末期在XT计算机(带有4.77 MHz 8086/8088处理器)上使用它来从发生故障的硬盘驱动器中恢复坏扇区。
当前版本也可以很好地运行(您还将获得Steve Gibson多年维护该软件的经验所带来的好处,以确保该软件可以在所有类型的硬盘驱动器上可靠地工作)。
它比DOS和Windows附带的ScanDisk或ChkDsk程序要彻底得多。
要为2014年以后发现此问题的人更新这些答案:
chkdsk
在默认的只读模式下,使用/r
或或/b
开关将大致相当于坏块
SpinRite具有更好的数据恢复能力,在默认级别2下运行
以4级运行,相当于坏块非破坏性读写模式,但具有更好的数据恢复功能。
但是它会因现代大型驱动器上的分割溢出而失效,您需要等待SpinRite 6.1修复此问题,根据Security Now网络广播上的Steve Gibson所述,开发已经从6.1开始,但是在他完成另一个项目时再次被暂停。
同时,为大型驱动器重新创建非破坏性读/写坏块模式的最接近Windows的功能方法需要拥有等于或大于要测试的驱动器的存储,因此可以进行以下操作:
下载并安装磁盘映像程序(Macrium可以免费反射,Acronis True Image是商业版或驱动器制造商的免费版本,或其他一些版本)
创建WinPE恢复磁盘(稍后将需要)和驱动器映像,并且未选中智能扇区复制,然后继续查找已选中的坏扇区(均为默认值的反向)。这将重新创建读取通道。
使用驱动器制造商的DOS工具对驱动器进行零填充(大致等同于写入阶段)
使用恢复CD还原在步骤2中制作的图像,以将制作的图像还原到其原始位置。(大致相当于写数据回退阶段)
在上述情况下,或者在使用Badblocks时,现代驱动器的内部逻辑将处理重映射在尝试写入它们时发现的所有坏扇区。
要重新创建Badblocks破坏性测试,您需要英国(而非美国)政府批准的商业擦拭程序,并且需要以更高的安全级别运行该程序,这将重复向驱动器写入模式并验证每次通过的次数Badblocks确实如此。
因此,在Spinrite 6.1或更高版本发布之前,问题就变成了:“为什么要这么做?”
下载几乎任何Linux live CD / DVD都将为您提供一个可启动的平台来运行坏块,对于需要除只读测试以外的任何情况的情况,它更便宜,更轻松,更安全地保存数据。
如果您要进行只读测试,只需CHKDSK
使用/r
开关运行
如果要CHKDSK /R
在Vista下的系统驱动器上运行,请注意,除非您也使用FSUTIL将该文件系统标记为脏文件,否则它将忽略您告诉它运行并跳过重新启动的测试。
chkdsk
使用“ /r
或” 或“ 或” /b
开关大致相当于默认只读模式下的badblocks”-中导声明,正如在注释中向您指出的,以及您在注释中所承认的那样,但没有更新该帖子。不赞成投票。
chkdsk和相应的开关
/ R查找坏道并恢复可读信息
/ b仅限于NTFS:清除卷上的不良群集列表,并重新扫描所有已分配和可用的群集以查找错误。/ b包含/ r的功能。将卷映像到新的硬盘驱动器后,请使用此参数。仅适用于Vista或更高版本。
CHKDSK
=只读,CHKDSK /R
=“ R”恢复,这绝对不是只读的。:)无论如何,对我来说,这个答案只是对现有答案进行评论,而实际上并没有提供新的/不同的答案。