23

Прежде всего, я думаю, что все знают, что жесткие диски выходят из строя гораздо чаще, чем хотелось бы признать производителям. Google провел исследование, которое показывает, что некоторые атрибуты необработанных данных, которые SMART-статус сообщает о жестких дисках, могут иметь сильную корреляцию с будущим отказом диска.

Например, мы обнаруживаем, что после первой ошибки сканирования диски в 39 раз чаще выходят из строя в течение 60 дней, чем диски без таких ошибок. Первые ошибки в перераспределениях, офлайн-перераспределениях и пробных счетах также сильно коррелируют с более высокими вероятностями отказов. Несмотря на эти сильные корреляции, мы находим, что модели прогнозирования сбоев, основанные только на параметрах SMART, вероятно, будут серьезно ограничены в своей точности прогнозирования, учитывая, что большая часть наших неисправных накопителей не показала никаких сигналов об ошибках SMART.

Кажется, что Seagate пытается скрыть эту информацию о своих дисках, утверждая, что только их программное обеспечение может точно определить точное состояние своего диска, и, кстати, их программное обеспечение не сообщит вам необработанные значения данных для атрибутов SMART. Western digital не претендует на мои знания, но их инструмент отчетности о статусе также не сообщает о значениях необработанных данных.

Я использовал HDtune и smartctl от smartmontools для сбора значений необработанных данных для каждого атрибута. Я нашел это действительно ... Я сравниваю яблоки с апельсинами, когда дело доходит до определенных атрибутов. Например, я обнаружил, что большинство накопителей Seagate сообщают о том, что они имеют миллионы ошибок чтения, тогда как в западном цифровом формате 99% времени показывают 0 для ошибок чтения. Я также обнаружил, что Seagate будет сообщать о многих миллионах ошибок поиска, в то время как Western Digital всегда сообщает 0.

В: Как мне нормализовать эти данные? Выдает ли Seagate миллионы ошибок, а Western digital - нет? В статье Википедии о статусе SMART говорится, что производители по-разному представляют эти данные.

Вот моя гипотеза:

Я думаю, что нашел способ нормализовать (это правильный термин?) данные.

Диски Seagate имеют дополнительный атрибут, которого нет у дисков Western Digital (Hardware ECC Recovered). Когда вы вычтете число ошибок чтения из числа восстановленных ECC, вы, вероятно, получите 0. Это, по-видимому, эквивалентно количеству сообщений об ошибках чтения, опубликованных Western Digitals. Это означает, что Western Digital сообщает только об ошибках чтения, которые не может исправить, в то время как Seagate подсчитывает все ошибки чтения и сообщает, сколько из них удалось исправить.

У меня был диск Seagate, где число ошибок чтения было меньше, чем число восстановленных ECC, и я заметил, что многие из моих файлов стали поврежденными. Вот как я выдвинул свою гипотезу. Миллионы ошибок поиска, которые производит Seagate, до сих пор остаются для меня загадкой.

Пожалуйста, подтвердите или исправьте мою гипотезу, если у вас есть дополнительная информация.

Вот умный статус моего западного цифрового привода, чтобы вы могли видеть, о чем я говорю:

james@ubuntu:~$ sudo smartctl -a /dev/sda
smartctl version 5.38 [x86_64-unknown-linux-gnu] Copyright (C) 2002-8 Bruce Allen
Home page is http://smartmontools.sourceforge.net/

=== START OF INFORMATION SECTION ===
Device Model:     WDC WD1001FALS-00E3A0
Serial Number:    WD-WCATR0258512
Firmware Version: 05.01D05
User Capacity:    1,000,204,886,016 bytes
Device is:        Not in smartctl database [for details use: -P showall]
ATA Version is:   8
ATA Standard is:  Exact ATA specification draft version not indicated
Local Time is:    Thu Jun 10 19:52:28 2010 PDT
SMART support is: Available - device has SMART capability.
SMART support is: Enabled

=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED

SMART Attributes Data Structure revision number: 16
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0
  3 Spin_Up_Time            0x0027   179   175   021    Pre-fail  Always       -       4033
  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       270
  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0
  7 Seek_Error_Rate         0x002e   200   200   000    Old_age   Always       -       0
  9 Power_On_Hours          0x0032   098   098   000    Old_age   Always       -       1468
 10 Spin_Retry_Count        0x0032   100   100   000    Old_age   Always       -       0
 11 Calibration_Retry_Count 0x0032   100   100   000    Old_age   Always       -       0
 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       262
192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       46
193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       223
194 Temperature_Celsius     0x0022   105   102   000    Old_age   Always       -       42
196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0
197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0
198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0
199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0
200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0

Редактировать: вот диск Seagate, о котором я говорил, который вызывал повреждение данных. Эти данные взяты из HDTune.

HD Tune: ST3250623A Health

ID                               Current  Worst    ThresholdData       Status   
(01) Raw Read Error Rate         45       38       6        77882492   Ok       
(03) Spin Up Time                99       98       0        0          Ok       
(04) Start/Stop Count            100      100      20       640        Ok       
(05) Reallocated Sector Count    100      100      36       0          Ok       
(07) Seek Error Rate             85       60       30       359872048  Ok       
(09) Power On Hours Count        94       94       0        6028       Ok       
(0A) Spin Retry Count            100      100      97       0          Ok       
(0C) Power Cycle Count           100      100      20       689        Ok       
(C2) Temperature                 25       55       0        25         Ok       
(C3) Hardware ECC Recovered      50       47       0        201555081  Ok       
(C5) Current Pending Sector      100      100      0        0          Ok       
(C6) Offline Uncorrectable       100      100      0        0          Ok       
(C7) Ultra DMA CRC Error Count   200      199      0        1          Ok       
(C8) Write Error Rate            100      253      0        0          Ok       
(CA) TA Counter Increased        100      253      0        0          Ok       

Power On Time         : 6028
Health Status         : Ok

На мой взгляд, тот факт, что аппаратный восстановленный ECC превышает частоту ошибок необработанного чтения, противоречит моему пониманию.

Это то, что я обнаружил как "обычный" диск seagate, в котором восстановленный ECC соответствует частоте ошибок необработанного чтения:

HD Tune: ST380011A Health

ID                               Current  Worst    ThresholdData       Status   
(01) Raw Read Error Rate         62       46       6        79986164   Ok       
(03) Spin Up Time                98       98       0        0          Ok       
(04) Start/Stop Count            100      100      20       6          Ok       
(05) Reallocated Sector Count    100      100      36       0          Ok       
(07) Seek Error Rate             83       60       30       210309663  Ok       
(09) Power On Hours Count        93       93       0        6516       Ok       
(0A) Spin Retry Count            100      100      97       0          Ok       
(0C) Power Cycle Count           99       99       20       1325       Ok       
(C2) Temperature                 25       52       0        25         Ok       
(C3) Hardware ECC Recovered      62       46       0        79986164   Ok       
(C5) Current Pending Sector      100      100      0        0          Ok       
(C6) Offline Uncorrectable       100      100      0        0          Ok       
(C7) Ultra DMA CRC Error Count   200      188      0        18         Ok       
(C8) Write Error Rate            100      253      0        0          Ok       
(CA) TA Counter Increased        100      253      0        0          Ok       

Power On Time         : 6516
Health Status         : Ok

РЕДАКТИРОВАТЬ:

Я хочу уточнить, что я знаю, что Google в целом считает SMART бесполезным. Я знаю, что каждый должен сделать резервную копию своих данных. Однако я занимаюсь ремонтом компьютеров других людей. У большинства людей нет резервных копий или RAID. Корпорации неэффективно решают проблемы с жесткими дисками, поэтому они просто запускают их на RAID, пока не умрут. Я считаю полезным в своей работе проверить SMART-статус жесткого диска. Это займет около 30 секунд. Если мне повезло, что на плохом диске был обнаружен намек на сбой, такой как ошибки сканирования или перераспределенные сектора, я знаю, как получить этот диск. Если такой подсказки не существует, я, вероятно, потрачу много часов на устранение проблем, связанных с медлительностью и повреждением данных, пока, наконец, не обнаружу, что жесткий диск неисправен.

Я просто пытаюсь настроить этот процесс.

4 ответа4

14

Хорошо, во-первых, я не согласен с вашей предпосылкой.

Google провел исследование, которое показывает, что некоторые атрибуты необработанных данных, которые SMART-статус сообщает о жестких дисках, могут иметь сильную корреляцию с будущим отказом диска.

На самом деле они обнаружили обратное:

... мы обнаруживаем, что модели прогнозирования сбоев, основанные только на параметрах SMART, вероятно, будут серьезно ограничены в своей точности прогнозирования, учитывая, что большая часть наших неисправных накопителей не показала никаких сигналов об ошибках SMART.

Во-вторых, пороги SMART не стандартизированы. Микропрограмма на самом накопителе помечает атрибут как «предварительный отказ», но необработанные значения не имеют смысла для пользователя. Например, Seagate говорит:

Различные атрибуты отслеживаются и измеряются в отношении определенных пороговых пределов. Если какой-либо атрибут превышает пороговое значение, тогда общий тест состояния SMART изменится с «Пропустить» на «Неудачно»

Значения SMART, которые могут быть считаны сторонним программным обеспечением SMART, не основаны на том, как эти значения могут использоваться на жестких дисках Seagate. Seagate не обеспечивает поддержку программ, которые утверждают, что считывают отдельные атрибуты и пороги SMART. На старых дисках может быть некоторая историческая корректность, но новые диски, без сомнения, будут включать новые решения, атрибуты и пороги.

tl; dr Резюме:

Необработанные значения SMART практически бессмысленны, поскольку разные производители используют их по-разному и имеют разные пороговые значения и т.д. Сама прошивка привода сообщит вам, когда она находится в состоянии «до сбоя» ... или не может быть, SMART действительно не очень надежный.

Делайте регулярные резервные копии!

14

Похоже, что разные производители используют значения SMART для иногда радикально разных вещей, как вы можете видеть здесь:

Мои жесткие диски в ReadyNAS сообщают о высокой частоте ошибок чтения SMART Raw, частоте ошибок поиска и восстановлении аппаратного ECC. Что я должен делать?

Seagate использует эти поля SMART для внутреннего подсчета, поэтому это известная проблема с дисками Seagate. Ищите ненормальные значения в других полях, особенно в перераспределенных секторах Ct и количестве ошибок ATA.

Так что, когда дело доходит до вашего актуального вопроса ...

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

Я бы сказал, что хорошее эмпирическое правило заключается в том, что вы можете ожидать, что настройки SMART будут сопоставимы только для одного и того же производителя дисков, а может быть, даже для одной и той же модели!

Поэтому, когда вы смотрите на диагностику этих подсчетов SMART, имейте это в виду ... "подсчет ошибок повторения при чтении" одного производителя может означать нечто совершенно иное, чем у другого изготовителя. Грустно, но правда. :(

4

Я не совсем уверен, какой вопрос ты задаешь. Похоже, у вас весь вопрос и ответ объединены в одно, но ...

Вы сравнивали показатели жесткого диска с данными, полученными от SeaTools?

Это стандартный аппаратный диагностический инструмент Seagate, а AFAIK - наиболее часто используемый диагностический инструмент для жестких дисков.

Не удивляйтесь, если обнаружите, что инструменты сообщают о неблагоприятных результатах об их конкурентах. Инструменты обычно работают с жесткими дисками всех производителей, но это не значит, что они заставляют своих конкурентов хорошо выглядеть при этом.

Разве вы никогда не слышали шутку: «99,99% всей статистики соответствуют действительности, кроме, конечно, этой статистики».

2

В физической реальности внутренних жестких дисков все марки жестких дисков размером более 100 МБ будут иметь много физических ошибок чтения. ECC безопасно исправляет большинство из них, ECC корректирует некоторые (надеюсь, очень немногие), а остальные (мало, но больше, чем неправильные исправления) возвращаются на компьютер как сообщение о сбое чтения и должны также приводить к автоматическому перемещению диска. плохой сектор.

В дополнение к исправлению ошибок необработанного чтения, ECC также исправляет чтения, считая, что оборудование было в порядке, но возвращаемые биты были немного неправильными. Таким образом, исправленное ECC может быть «необработанным чтением не удалось, но исправлено ECC + raw считывалось успешно, но было ошибочным и исправлено ECC».

Таким образом, возможны две интерпретации данных:

О. Диски, не относящиеся к Seagate, не включают исправленные ошибки чтения ECC в "счетчике необработанных чтений", а только исправляемые ошибки.

Б. Seagate считает ошибкой чтения, если ECC обнаружит, что что-то не так с данными, даже если цепь низкого уровня не заметила, другие не заметили.

Нормализация будет сильно отличаться в зависимости от того, какая теория (А или В) верна.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .