Чому різні виробники мають різне значення SMART?


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 Recovery). Коли ви віднімаєте кількість помилок читання з числа ECC Recovery, ви, ймовірно, отримаєте 0. Очевидно, що це еквівалентно західному цифровому коду, про який повідомляється "Помилка читання". Це означає, що 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 секунд. Якщо мені пощастило, що поганий диск виявив натяк на збій, такий як помилки сканування або перерозподілені сектори, я знаю, щоб вивести диск з чортви звідти. Якщо такої підказки не існує, я, мабуть, витрачую багато годин на усунення повільності та пошкодження даних, поки нарешті не виявлю, що жорсткий диск поганий.

Я просто намагаюся налагодити цей процес.


У меню адміністрування в розділі (я вважаю) управління дисками є інформація на основі розумних даних. Він може мати додаткові здібності над smartctl, але я його деякий час не використовував і не мав перед собою.
Jarvin

@Dan Привіт Ден, я не впевнений, про який інструмент Windows ти говориш. Ви можете уточнити?
Джеймс Т

Проблема SMART полягає в тому, що це трохи помилка; фактичного інтелекту в ньому немає, лише кілька рівнянь (можливо, навіть не евристики). Все, що він може зробити - це стежити за собою та повідомляти номери, ось і все. Наприклад, у мене накопичувач, у якого був погано підключений шнур живлення, через що він дуже швидко включався та вимикався (видаючи звук "клацання смерті"). Я приєднав роз'єм, тому він працює безперебійно, але через тимчасовий (виправлений) збій, який одного разу, він назавжди записав події RRER у SMART, завдяки чому виглядає, що він виходить з ладу.
Synetech

Відповіді:


14

Здається, різні виробники використовують значення SMART для іноді кардинально різних речей, як ви бачите тут :

Мій жорсткий диск у ReadyNAS повідомляє про високий рівень помилок SMART Raw Read, Шукайте показник помилок та відновлено апаратне ECC. Що я повинен зробити?

Seagate використовує ці поля SMART для внутрішніх підрахунків, тому це відома проблема з дисками Seagate. Шукайте ненормальні підрахунки в інших полях, особливо перерозподіленому секторі Ct та підрахунку помилок ATA.

Тож якщо мова йде про ваше власне питання ...

Якщо мені пощастило, що поганий диск виявив натяк на збій, такий як помилки сканування або перерозподілені сектори, я знаю, щоб вивести диск з чортви звідти. Якщо такої підказки не існує, я, мабуть, витрачую багато годин на усунення повільності та пошкодження даних, поки нарешті не виявлю, що жорсткий диск поганий.

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

Тож, коли ви дивитесь на діагностику цих підрахунків SMART, пам’ятайте про те, що «кількість помилок повторного читання» одного виробника може означати щось зовсім інше, ніж інше виробника. Сумно але правда. :(


14

Гаразд, по-перше, я не згоден з вашою умовою.

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

Насправді вони виявили навпаки:

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

По-друге, пороги SMART не стандартизовані. Прошивка на самому диску буде позначати атрибут як "попередній збій", але необроблені значення для користувача безглузді. Наприклад, Seagate говорить :

Різні атрибути відстежуються та вимірюються відповідно до певних порогових меж. Якщо будь-який атрибут перевищує поріг, то загальний тест SMART Status зміниться з Pass на Fail.

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

tl; dr Резюме:

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

Робіть регулярні резервні копії!


На основі ваших коментарів не здається, що ви прочитали весь мій пост. Ось чому я вкладаю всю довідкову інформацію та цитати. Ви цитували Google, але лише дуже вибрану його частину. Якщо ви читаєте частину безпосередньо перед вашою цитатою ... це говорить про те, що деякі атрибути мають сильну кореляцію відмов .... наприклад, перерозподілений сектор рахується. Виробники не повідомляють, що їх приводи знаходяться в стані перед відмовою після одного перерозподіленого сектора. Це чітко вказує на те, що ви можете отримати кращі показники стану здоров'я накопичувача, переглянувши необроблені дані.
Джеймс Т

Я також хотів би додати, що мій накопичувач моторного транспорту пошкоджував мої дані, а значення необроблених даних помітно відрізнялися від того, що я навчився бути здоровими накопичувачами. Зрозуміло, що щось не так, де виробник встановлює поріг.
Джеймс Т

Я думаю, вам потрібно перечитати мій пост та посилання. Сирі значення SMART не є надійними показниками нічого . У звіті Google не сказано, що "деякі атрибути мають сильну кореляцію відмов". Що це говорить про те, що, незважаючи на те, що "після першої помилки сканування, накопичувачі в 39 разів більше шансів вийти з ладу протягом 60 днів, ніж диски без таких помилок", менше 15% населення, що вийшло з ладу, мали будь-які помилки сканування. Це надійний показник, якщо він правильний 15% часу?
sml

1
@scottl Я не впевнений, звідки ти взяв свої 15%. Я цього не бачив у статті. Навіть якщо лише 15% їх дисків мали помилки сканування ... вони виявили, що накопичувач із помилками сканування в 39 разів більше шансів вийти з ладу за 60 днів. Це не означає, що ваш диск не вийде з ладу, якщо у вас не виникнуть помилки сканування. Це просто означає, що якщо у вас є помилка при скануванні ... термін служби ваших жорстких дисків, ймовірно, короткий. Ви коли-небудь брали статистику? Я вважаю це дуже корисним.
Джеймс Т

1
Поширені запитання щодо smartmontools говорять: необроблені атрибути SMART (температура, час увімкнення живлення тощо) зберігаються у конкретних постачальницьких структурах. Десь такі дивні. Диски Hitachi (принаймні деякі з них) зберігають час увімкнення живлення в хвилинах, а не в годинах (див. Наступне питання нижче). Диски IBM (принаймні деякі з них) мають три температури, що зберігаються в сирій структурі, а не лише одну. І так далі.
sml

4

Я точно не впевнений, яке питання ви задаєте. У вас, здається, у вас все запитання та відповіді згорнуті в одне, але ...

Чи порівнювали ви показники жорсткого диска з тими, що надані SeaTools

Це стандартний апаратний діагностичний інструмент Seagate і AFAIK - це найпоширеніший інструмент діагностики HDD.

Не дивуйтесь, якщо виявите, що інструменти повідомляють про несприятливі результати щодо своїх конкурентів. Зазвичай інструменти працюють із жорсткими дисками всіх виробників, але це не означає, що вони роблять своїх конкурентів хорошими.

Ви ніколи не чули жарту: "99,99% всієї статистики правдиві, за винятком, звичайно, цієї статистики".


1
Так ... це трохи заплутано. Я в основному вкладаю всю основну інформацію, з якою я знайомий до цього питання, і всі мої тести та домисли після нього. Ось моє запитання "Як нормалізувати ці дані?". В основному .. як змусити всі атрибути даних одного виробника означати те саме, що і атрибути даних від іншого виробника, щоб я міг точно їх порівняти.
Джеймс Т

@James Ви можете спробувати зібрати дані з якомога більшої різниці і зрозуміти, як кожен, якщо інтерпретувати дані по-різному один від одного. Всі вони можуть повідомляти правильні дані, вони можуть просто інтерпретувати їх по-іншому, як ви вказали. Тому я додав цитату статистики ... Просто тому, що дані хороші, не означає, що інтерпретації є.
Еван Плейс

2
Так, я це зробив. Я перевірив понад 70 різних жорстких дисків, і велика різниця в помилках пошуку та помилках читання - це атрибути, які мені зачепилися. Я здогадуюсь, що для накопичувачів Seagate, помилки читання мають певний зв’язок із відновленим обладнанням ecc. Я точно не впевнений, що це за стосунки. Я сподівався, що хтось тут може мені сказати. Я також сподівався, що хтось може мені сказати, чому приводи Seagate мають величезну кількість помилок пошуку, а у західних цифрових завжди здається нуль.
Джеймс Т

@James Можливо, хтось прийде разом з кращою відповіддю ... Моя чесна здогадка, Western Digital, ймовірно, не дотримується точної специфікації SMART. Ось проблема в технічних стандартах, вони прекрасні торгові точки, але завжди є кілька виробників, які продаватимуть всю вигоду без дотримання повної специфікації.
Еван Плейс

Однак відхилення від стандарту - це те, що я зрозумів, і що пропонує стаття у Вікіпедії. Мені хотілося б знати, чим вони відрізняються, щоб я міг правильно порівняти двох виробників (і, можливо, інших). Дякую за коментарі, Еван. Сподіваємось, це пояснює питання і для інших.
Джеймс Т

2

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

Окрім виправлення необроблених помилок читання, ECC також виправляє повідомлення про те, що апаратна думка була в порядку, але повернені біти були трохи помилковими. Таким чином, виправлена ​​ECC може бути "непрочитаною помилкою читання, але виправленою системою ECC + необроблене читання вдалося, але було помилковим та виправлено ECC".

Таким чином, здається можливим два тлумачення даних:

А. Приводи, що не мають Seagate, не включають виправлені помилки зчитування ECC у "кількість помилок читання помилок читання", а лише непоправні помилки.

B. Seagate вважає помилкою читання помилку, якщо ECC виявив щось не так із даними, навіть якщо ланцюг низького рівня не помітив, інші - не.

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


> також повинен змусити диск автоматично перемістити поганий сектор. Тоді яке співвідношення між полями нерозрегульованого підрахунку сектору, що переміщуються, та поточними очікуваними підрахунками сектору ? Чи не збільшилось би воно струмом , то або переїхало, або було нерегульоване ? Чому це було б нерегульованим? Якщо вона намагалася перекомпонувати поганий сектор, а він не вдався (тобто запасний сектор поганий), то чи не слід намагатися переймати його в інший запасний сектор? це не шина, що у неї є лише одна запасна.
Synetech

100 Мб? Ви маєте на увазі 100 ГБ?
Пітер Мортенсен
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.