几周前,我购买了一个来源不明的“2Tb”拇指驱动器,目的是在重建系统时将其用作中间存储(Debian 的三个版本)。
任何人都可以提出一种有效的方法来验证其实际大小,即它实际上具有“2Tb”闪存,而不是在存储空间中重复的单个“500Mb”设备?
我想强调的是,我完全意识到制造商长期以来在声明容量时所采取的自由,并且我的“2Tb”驱动器可能具有 1.75Tib 之类的最大实际容量。
它最初是使用未分区的 exFAT 进行格式化的,虽然我通常的测试程序会向其中写入超过 1Tb 的测试数据,但在进入读取通道之前,它总是会在某个随机点出现故障,读取通道将验证块号是否确实保留。虽然这可能表明驱动器的微控制器不稳定,但问题也可能出在 Linux 上相对较新的 exFAT 支持上。
我可以使用 gparted 进行分区并重新格式化为 ext4 或 ext2,而不会出现错误。
尝试使用 -cc 选项手动运行 mke2fs 进行 ar/w 块测试,每 1% 的驱动器大约需要 80 小时。此外,我还没有看到明确验证它具有两个单独的通道,这需要明确地验证大小。
我还没有尝试运行我自己的测试程序,我相信该程序可以在格式化为 ext2 的设备上的较小媒体(10 GB 规模)上运行。
如果我的测试程序应用于块设备而不是文件,我可以通过添加 --sparse 选项来提高效率,该选项仅在例如 4K 块中写入块号。如果目标是测试文件,这可能没有帮助,因为(a)操作系统可能不会为稀疏文件中的未写入区域分配空间,并且(b)涉及的翻译层太多,几乎不可能触及闪存设备块边界。
任何建议,将不胜感激。