Поврежденные файлы Seagate Momentus XT (Linux и Mac)

10

Мой гибридный жесткий диск 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.

В инструкции для воспроизведения проблем проста. Вот краткое устное описание:

  1. Создайте большой тестовый файл, сохраните его на другом устройстве хранения ( не Momentus XT) и вычислите контрольную сумму SHA-1.
  2. Запишите тестовый файл в Momentus XT.
  3. Прочитайте тестовый файл из Momentus XT, рассчитайте SHA-1 и сравните эту контрольную сумму с контрольной суммой оригинала. Мы должны иметь матч. Возможно, мы воспроизвели проблему, если они не совпадают. (Только «вероятно», потому что другие проблемы могут вызвать несоответствие. См. Ветку Seagate об определении этой конкретной проблемы путем сравнения файлов с cmp -l.)
  4. Повторите с шага (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, попробуйте воспроизвести эту проблему и дайте мне знать, что происходит.

Что еще я могу сделать, чтобы диагностировать проблему?

Винсент Ю
источник
1
Вы перезагружаетесь между записью и чтением? Вы очищаете кеш, чтобы убедиться, что он действительно читается с диска вместо кеша? Если нет, то это может быть причиной того, что вы не можете воспроизвести его с меньшими файлами, так как они, скорее всего, все еще будут в кеше
psusi
Я обхожу кеш страницы, читая с iflag=directфлагом ввода с помощью dd. Когда я не использую dd, я sudo sh -c "sync && echo 1 > /proc/sys/vm/drop_caches"
Я только что понял, что вы можете говорить о дисковом буфере, который физически находится в Momentus XT, а не о кеше страниц Linux. У вас есть смысл в этом случае - я в основном не принимаю никаких мер против чтения дискового буфера, и я также сразу же читаю файл после его записи. Возможно, мне следует зафиксировать записи в несколько файлов, а затем прочитать их на основе FIFO. С учетом вышесказанного, кэш-память Momentus XT составляет всего 32 МБ, и я также провел несколько тестов в прошлом, где я написал> 10 ГБ небольших файлов (~ 64 МБ) и впоследствии прочитал их, не обнаружив повреждений.
Возможно в микропрограмме накопителя есть ошибка (переполнение целочисленного значения?), Из-за которой при высокой скорости записи он теряет след неписанных блоков. Или есть некоторые плохие блоки на флэш-памяти, которые не удалось обнаружить прошивке. NTFS проверяет записи (а ntfs-3g работает очень медленно), поэтому проблема вряд ли появится. Если вы не можете найти исправление, вы можете использовать ZFS и включить контрольную сумму.
billc.cn
@ billc.cn, я воспроизвел проблему с NTFS. Btrfs и ZFS с контрольными суммами данных явно не смогут прочитать поврежденные файлы, но поврежденные данные будут невосстановимыми. Для восстановления этих файлов потребуется большая избыточность (например, зеркалирование на уровне FS или зеркалирование RAID). В любом случае, я, конечно, не использую Momentus XT, пока не выясню, что происходит.
Винсент Ю

Ответы:

6

Обновление прошивки до SD26 устраняет эту проблему с повреждением файлов в Linux. К сожалению, SD26 не был публично выпущен.

Лучший способ получить прошивку SD26 - попросить Seagate предоставить копию загрузочного компакт-диска обновления или утилиту обновления Windows.

20 августа я отправил техническую поддержку Seagate по электронной почте, чтобы узнать о SD26, после того как обнаружил, что это решило мою проблему с повреждением файлов. Вот два ответа, которые я получил от Seagate Global Customer Support 23 августа:

Спасибо, что связались с Seagate сегодня. Дайте мне немного времени, чтобы поговорить с разработчиками, чтобы я мог видеть, что происходит с прошивкой SD26. Из-за ваших открытий нам нужно провести небольшое расследование. Мы очень мало тестируем с Linux. Позвольте мне посмотреть, что я могу узнать, и если необходимы дальнейшее тестирование и публичный выпуск прошивки. Я прилагаю файл ISO. Я вернусь с тобой, как только получу ответ. Seagate очень ориентирован на клиента, и мы ценим то, что вы обратили на это наше внимание.


Обычно мы не делаем общедоступные прошивки доступными. Он может нанести больше урона, чем пользы в чужих руках. Мы получаем много кирпичных дисков от неправильных обновлений. Мы хотим, чтобы потребители связывались с нами, чтобы мы могли убедиться, что обновление прошивки необходимо и выгодно. Алан М. является нашим модератором форумов, и он будет делать объявление в вашей теме. Еще раз спасибо за то, что вы обратили на это наше внимание. Наши клиенты являются лучшими и отличным источником информации и, как правило, первыми, кто сообщает нам, когда все работает не так, как должно. Позвольте нам шанс решить проблему.

Как я уже говорил, я думаю, что лучше всего получить SD26 напрямую от Seagate. Тем не менее, есть также утечка копий как загрузочного ISO, так и утилиты Windows, которые легко найти с помощью поиска в Google. Контрольная сумма SHA-1 загрузочного компакт-диска SD26 (* .iso), который я получил от Seagate: b7b0c7e1b9529925b0364b2cf19a62d608b58082.

Я разместил информацию в этом ответе и другие разные детали в ветке Seagate .

Винсент Ю
источник
3
Firmware SD28 теперь доступен: seagate.custkb.com/seagate/crm/selfservice/...
Мад
4

Все упоминания об этой проблеме были удалены с форумов Seagate. Они, вероятно, считают, что обсуждение не является необходимым сейчас, когда можно исправить проблему, обновив SD28.

Единственная проблема заключается в том, что у людей больше нет средств для получения достоверной информации, описывающей проблему и / или как ее исправить, поскольку все ссылки на любую корреляцию между проблемой и ее решением были удалены с сайта Seagate. Загрузка обновления прошивки по-прежнему доступна, но нет упоминания о том, что делает прошивка, поэтому пострадавшие пользователи могут столкнуться с трудностями при попытке найти решение.

Чтобы помочь гуглерам: загрузка микропрограммы SD28 по адресу http://knowledge.seagate.com/articles/en_US/FAQ/215451en?language=en_US является решением проблемы повреждения данных, возникающей в следующих моделях накопителей Seagate Momentus XT:

  • ST92505610AS

  • ST93205620AS

  • ST95005620AS

Майкл
источник
2

Я только что проверил, что происходит в OS X, а также. : О (

Я подозревал повреждение данных по двум причинам:

1) Момент XT предназначен для кэширования часто используемых файлов в 4 ГБ флэш-памяти, и эти файлы чаще всего представляют собой небольшие файлы, необходимые для загрузки программ во время загрузки (файлы настроек и т. Д.). С ростом частоты мои программы, настроенные на загрузку при входе в систему, неожиданно будут иметь настройки по умолчанию или давать мне «приветственное руководство» и не будут запрограммированы. К ним относятся mail.app (информация об учетной записи не сохраняется), небольшая стукачка (мониторинг портов без правил), ртуть (приветствие) и другие. Это привело меня к мысли, что небольшие файлы в кеше повреждены.

2) Причиной вращения диска стало «вращение вертушек» в тех случаях, когда диск, казалось, вращался, и когда ОС требовался доступ к нему, мне пришлось ждать, пока диск снова начнет вращаться. Ожидание стало более частым и длилось дольше. Несколько раз я просто протирал диск и использовал клонер с копией, чтобы скопировать все, что было ранее скопировано. Однако после копирования файлов в моментус xt многие большие файлы (фильмы, ISO-образы, zip-файлы) были повреждены и не загружались или не открывались. Я думал, что проблема с пляжными мячами и замедлением будет решена, когда я обновлю Snow Snow Leopard до Lion, о чем недавно писали несколько пользователей, но ISO-файл предварительного просмотра 3.46Gb Dev, который я скопировал в momentus XT с USB-накопителя был поврежден, поэтому я даже не смог установить Lion.

Я только что наткнулся на вашу ветку на форумах seagate и пришел сюда, чтобы написать:

Я использовал программу под названием «умная утилита» под OS X, которая говорила, что диск вышел из строя. Я думаю, что ошибка была для кода 184, которые были "сквозными" ошибками. Я был встревожен тем, что диск «вышел из строя», но я читал, что другие пользователи получали эту ошибку при обновлении встроенного программного обеспечения (как я сделал с SD23 до SD25), и что Seagate будет считать диск неисправным, только если он вышел из строя под их SeaTools ,

Я положил свой моментус xt в корпус USB и запустил SeaTools на диске через Windows на другом компьютере. Проверка SMART не была разрешена. Выполнение «теста короткого диска» и «длинного общего теста» об ошибках не сообщалось? Теперь я попытался дублировать ваши методы в OS X, и я также обнаружил, что файлы повреждены. Я использую MacBook Pro 15 "в конце 2009 года, и у меня есть 500 Гб Momentus XT на SD25.

Фред

Фред
источник
Спасибо за сообщение об этом! Можете ли вы выполнить следующую команду, чтобы сравнить не поврежденный файл с его поврежденной копией? cmp -l <uncorrupted file> <corrupted copy> | headЕсли у нас возникла та же проблема, вы должны увидеть три столбца чисел, а самый левый столбец должен иметь десять последовательных чисел. (Подробности: крайний левый столбец показывает номера байтов различных байтов, а два других столбца показывают действительные значения различных байтов.)
Винсент Ю.