在出售旧硬盘之前,我会完全读写磁盘,以验证它没有坏扇区。
我总是这样写:
dd if=/dev/zero of=/dev/sdb bs=100M status=progress但是我的电脑有32 dd内存,当dd退出时,很多数据可能在缓存中。
是否有一种方法可以查看操作系统何时未能将缓存写入磁盘(在dd终止后)?
对于dd来说,在退出之前刷新缓存的正确选项是什么?同步,fsync还是fdat异步?
请不要建议磁盘检查工具。dd对我来说已经足够了。
发布于 2020-01-17 13:04:23
虽然您特别要求不推荐磁盘检查工具,但我将这样做,并在此建议:磁盘本身。您可以要求驱动器执行一个彻底的内部自我测试,消除所有可能的来源有关缓存的问题。通过gsmartcontrol可以方便地访问自测试:

如果您真的不想这样做,您仍然应该考虑使用像F3这样的工具。它不仅可以检查数据是否可以写入,还可以检查是否可以事后读取书面数据(在我看来,这是存储介质更重要的功能)。
使用dd的conv=fdatasync,dd不会在写入最后一个块之前终止。
https://unix.stackexchange.com/questions/562614
复制相似问题