Мой гибридный жесткий диск Seagate Momentus XT портит файлы в Linux. Я был бы признателен за помощь от любого, но я особенно хотел бы знать, могут ли другие пользователи Momentus XT воспроизвести эту проблему; Я предоставил пошаговые инструкции по воспроизведению этой проблемы на форумах сообщества Seagate.
Пока что четыре пользователя воспроизвели эту проблему на следующих ноутбуках и ОС / дистрибутивах:
- Пять ноутбуков: Lenovo Thinkpad T60, T61, T510, MSI MS-1656-ID1 и MacBook Pro (15 "в конце 2009 года).
- Четыре ОС / дистрибутива: Ubuntu 11.04, Fedora 15, openSUSE и Mac OS X.
Инструкции по воспроизведению проблемы просты. Вот краткое устное описание:
- Создайте большой тестовый файл, сохраните его на другом устройстве хранения (не Momentus XT) и вычислите контрольную сумму SHA-1.
- Запишите тестовый файл в Momentus XT.
- Прочитайте тестовый файл из Momentus XT, рассчитайте SHA-1 и сравните эту контрольную сумму с контрольной суммой оригинала. Мы должны иметь матч. Возможно, мы воспроизвели проблему, если они не совпадают. (Только «вероятно», потому что другие проблемы могут вызвать несоответствие. Посмотрите ветку Seagate об определении этой конкретной проблемы путем сравнения файлов с помощью
cmp -l
.) - Повторите с шага (2).
Тема Seagate содержит больше деталей. Вот некоторые заметки из моего тестирования (я смог воспроизвести эту проблему на трех последовательных дисках Momentus XT; я RMA сделал два раза, а теперь на третьем):
- Кажется, что происходит то, что Momentus XT иногда пренебрегает записью данных на диск, так что когда я читаю с диска, я получаю то, что изначально было в секторе, а не правильные данные. Это происходит в блоках разных размеров; типичные размеры 1 МБ и 512 КБ.
- Проблема возникает на ext2, ext4, Btrfs, NTFS и FAT32. Странно, я не смог воспроизвести эту проблему на ext3.
- Запись с флагом вывода
oflag=direct
вdd
позволяет избежать этой проблемы. Быстрая передача данных на диск с помощьюwhile true; do sync; sleep 0.01; done
также предотвращает проблему. - Я смог воспроизвести эту проблему только через интерфейс SATA и eSATA. Соединение USB, кажется, предотвращает проблему. (Не уверен, если это связано со скоростью передачи.)
- Проблемы чаще возникают с большими файлами (> 2 ГБ). Мне не удалось создать проблемы с файлами размером менее 85 МБ.
- Я не смог воспроизвести проблему на Windows XP с NTFS.
- Газой на форумах Seagate не смог воспроизвести проблему на FreeBSD 8.2 с UFS2.
- Momentus XT без проблем проходит как расширенный SMART-тест, так и
badblocks -w
. - Мой ноутбук (MS-1656-ID1) успешно прошел через 24 часа каждый из Memtest86+, Memtest86, memtester и MPrime.
- Я протестировал два других устройства хранения данных (Seagate Momentus 7200.4 и твердотельный накопитель Intel серии 320) с помощью одной и той же процедуры, и они оба прошли без проблем.
Если у вас есть Momentus XT, попробуйте воспроизвести эту проблему и дайте мне знать, что происходит.
Что еще я могу сделать, чтобы диагностировать проблему?