f3read - 损坏、更改和覆盖扇区之间有什么区别?

f3read - 损坏、更改和覆盖扇区之间有什么区别?

我正在f3测试数百个 USB 闪存棒是否有错误。

以下是故障驱动器的输出示例。首先使用以下命令编写测试文件f3write

Free space: 3.74 GB
Creating file 1.h2w ... OK!
Creating file 2.h2w ... OK!
Creating file 3.h2w ... OK!
Creating file 4.h2w ... OK!
Free space: 0.00 Byte
Average writing speed: 2.22 MB/s

然后读回f3read

                  SECTORS      ok/corrupted/changed/overwritten
Validating file 1.h2w ... 2030944/        0/      0/  66208
Validating file 2.h2w ... 2032136/        0/      0/  65016
Validating file 3.h2w ... 2031920/        0/      0/  65232
Validating file 4.h2w ... 1509112/        0/      0/  48376

  Data OK: 3.63 GB (7604112 sectors)
Data LOST: 119.55 MB (244832 sectors)
               Corrupted: 0.00 Byte (0 sectors)
        Slightly changed: 0.00 Byte (0 sectors)
             Overwritten: 119.55 MB (244832 sectors)
Average reading speed: 3.23 MB/s

通常,如果 USB 驱动器包含错误,它们会出现在损坏的列中。最近,我的驱动器在“覆盖”列中报告错误。我想知道这三者有什么区别。

我还注意到该badblocks实用程序还报告了三列错误,我想知道它是否是相同的方案?编辑:不是,不是 -如何解释坏块输出

答案1

文档f3说:

f3read读取一个扇区(即512字节,与卡通信的单位)时,f3read可以检查该扇区是否被正确写入f3write,并找出该扇区应该在哪个文件中以及该扇区在该文件中的哪个位置。因此,如果一个扇区结构良好,或者有几个位翻转,但在意外位置读取,f3read则将其视为覆盖。稍微改变的扇区是位于正确位置的扇区,其中一些位被翻转。

这三种类型的错误意味着:

  • 已更改:该扇区由 写入f3write,并在预期位置读取,有一些更改(小于“容差”,允许两个错误);
  • 覆盖:读取的扇区包含写入f3write另一个扇区的数据,可能有一些变化(在容差范围内);
  • 损坏:扇区与写入的数据不匹配f3write(更改超出容差)。

这三个都是坏消息,但种类不同。被覆盖的扇区表明驱动器谎报其容量并且正在包装写入。

相关内容