Seagate Momentus XT 损坏文件(Linux 和 Mac)

Vin*_* Yu 10 linux mac hard-drive filesystem-corruption

我的 Seagate Momentus XT 混合硬盘驱动器在 Linux 上损坏文件。我很感激任何人的帮助,但我特别想知道其他 Momentus XT 用户是否能够重现这个问题;我在希捷社区论坛上提供了重现此问题的分步说明。

到目前为止,已有四名用户在以下笔记本电脑和操作系统/发行版上重现了此问题:

  • 五台笔记本电脑:Lenovo Thinkpad T60、T61、T510、MSI MS-1656-ID1 和 MacBook Pro(2009 年末 15 英寸)。
  • 四个操作系统/发行版:Ubuntu 11.04、Fedora 15、openSUSE 和 Mac OS X。

重现问题说明很简单。以下是简短的口头描述:

  1. 创建一个大型测试文件,将其保存到另一个存储设备(不是Momentus XT),并计算 SHA-1 校验和。
  2. 将测试文件写入 Momentus XT。
  3. 从 Momentus XT 读取测试文件,计算 SHA-1,并将此校验和与原始校验和进行比较。我们应该来一场比赛。如果它们不匹配,我们可能已经重现了该问题。(仅“可能”,因为其他问题可能会导致不匹配。有关通过将文件与cmp -l.
  4. 从步骤 (2) 开始重复。

希捷线程有更多的细节。以下是我测试的一些说明(我已经能够在三个连续的 Momentus XT 驱动器上重现这个问题;我已经 RMA 两次,现在是第三个):

  • 似乎正在发生的事情是 Momentus XT 有时会忽略向驱动器写入数据,因此当我从驱动器读取数据时,我得到的是扇区上的原始数据,而不是正确的数据。这发生在不同大小的块中;典型大小为 1 MiB 和 512 KiB。
  • 问题出现在 ext2、ext4、Btrfs、NTFS 和 FAT32 上。奇怪的是,我无法在 ext3 上重现这个问题。
  • 使用oflag=direct输出标志写入dd可避免此问题。快速将数据提交到磁盘while true; do sync; sleep 0.01; done也可以防止这个问题。
  • 我只能通过 SATA 和 eSATA 接口重现此问题。USB 连接似乎可以防止出现此问题。(不确定这是否是由于传输速度。)
  • 大文件(> 2 GB)更容易出现问题。对于小于 85 MB 的文件,我无法产生问题。
  • 我无法在使用 NTFS 的 Windows XP 上重现该问题。
  • Seagate 论坛上的 Gazoi无法在带有 UFS2 的 FreeBSD 8.2 上重现该问题
  • Momentus XT 通过了扩展的 SMART 测试并且badblocks -w没有出现任何问题。
  • 我的笔记本电脑 (MS-1656-ID1) 已成功通过 Memtest86+、Memtest86、memtester 和 MPrime 的 24 小时。
  • 我已经使用相同的程序测试了另外两个存储设备(Seagate Momentus 7200.4 和 Intel 320 系列 SSD),它们都通过,没有问题。

如果您有 Momentus XT,请尝试重现此问题并告诉我会发生什么。

我还能做些什么来诊断问题?

Vin*_* Yu 6

将固件更新到 SD26 解决了 Linux 上文件损坏的问题。不幸的是,SD26 尚未公开发布。

获得 SD26 固件的最佳方式是向希捷索取可引导更新 CD 或 Windows 更新实用程序的副本。

在我发现 SD26 解决了我的文件损坏问题后,我于 8 月 20 日通过电子邮件向希捷技术支持询问了有关 SD26 的问题。以下是我在 8 月 23 日从希捷全球客户支持收到的两个回复:

感谢您今天联系希捷。给我一些时间与开发人员联系,以便我了解 SD26 固件的情况。由于你的发现,我们需要做一些调查。我们很少使用 Linux 进行测试。让我看看我能找到什么,以及是否需要进一步测试和公开发布固件。我正在附上 ISO 文件。我一听到回复就会和你一起回来。希捷非常以客户为导向,我们感谢您提请我们注意这一点。


我们通常不会公开提供固件。它可以造成更多的伤害,然后在坏人手中。我们收到了大量因更新不当而导致的变砖驱动器。我们希望消费者与我们联系,以便我们可以验证固件升级是否必要且有益。Alan M. 是我们的论坛版主,他将在您的帖子中发布公告。再次感谢您让我们注意到这一点。我们的客户是最好的,也是重要的信息来源,通常是第一个在事情不正常时通知我们的人。让我们有机会解决问题。

正如我已经说过的,我认为最好直接从希捷获得 SD26。但是,通过在 Google 上搜索很容易找到可启动 ISO 和 Windows 实用程序的泄露副本。我从希捷收到的 SD26 可启动更新 CD (*.iso) 的 SHA-1 校验和是 b7b0c7e1b9529925b0364b2cf19a62d608b58082。

我已在Seagate帖子中发布了此答案中的信息以及其他杂项详细信息。

  • 固件 SD28 现已推出:http://seagate.custkb.com/seagate/crm/selfservice/search.jsp?DocId=215451 (3认同)