似乎有很多适用于 Mac OS X 的工具可以通过执行读取/验证过程来测试硬盘驱动器是否有坏块。也就是说,它们读取一个块,然后再次读取,并验证两次读取是否产生相同的结果。
我需要一个可以进行非破坏性读取的工具/写/验证通过。它应该读取每个块,将相同的内容写回,然后再次读取以进行验证。这样,每个块都会被写入,让硬盘有机会避开坏块。但由于刚刚读取的相同内容会被写回,因此它不会破坏尚未丢失的数据。
我知道有几种工具可以执行读取/验证操作,但我不知道有任何工具可以执行读取/写/验证。是否有任何工具可以满足我的要求?
在 Mac OS X 上编译和运行的 Unix / 开源工具也是公平的游戏。
答案1
您可能想看看 badblocks(8),这是 GNU/Linux 的一个命令行工具。有一个适用于 Darwin 的端口,您可以从 MacPorts 获取:
sudo port -v install e2fsprogs
查看手册后,您可以阅读-n和-w选项段落:
-n使用非破坏性读写模式。默认情况下,只进行非破坏性只读测试。此选项不能与 -w 选项结合使用,因为它们是互斥的。
-w使用写入模式测试。使用此选项,badblocks 通过在设备的每个块上写入一些模式(0xaa、0x55、0xff、0x00)、读取每个块并比较内容来扫描坏块。此选项不能与 -n 选项结合使用,因为它们是互斥的。
希望这就是您所寻找的。
答案2
digilloyd 磁盘测试仪可以读取/写入/验证,而且性能极佳。
更多的这里
答案3
驱动天才
我希望得到 sirdharma 的回答,我更喜欢命令行工具,但不喜欢 Macports 要求安装多 GB 的 fat Xcode。如果我可以下载(用于 Lion)预编译的二进制文件,我会使用它。我继续搜索查询“badblocks os x lion”,结果Pro Soft 的 Drive Genius。事实证明我早在 2013 年就购买了许可证。
扫描
Drive Genius 版本 3 的扫描功能有两个复选框用于启用写入(和潜在的破坏性)测试。
1. 备用坏块
它可以在几小时到几天的时间内指示硬盘取消引用坏块。
https://www.prosofteng.com/support/drive-genius-3/drive-genius-3-spare-bad-blocks
2. 扩展扫描
这将验证每个块的读写能力。对于 1TB 的驱动器来说,此扫描需要 1 周时间,这并不罕见。