Smartmontools - Narzędzie do analizy danych SMART dysków HDD, SSD, NVMe

| F.A.Q.Pozostałe

Smartmontools - Narzędzie do analizy danych SMART dysków HDD, SSD, NVMe

smartctl steruje systemem samomonitorowania, analizy i raportowania (SMART) wbudowanym w większość dysków twardych ATA/SATA i SCSI/SAS oraz dysków półprzewodnikowych SSD/NVMe. Celem SMART jest monitorowanie niezawodności dysku twardego i przewidywanie awarii dysku oraz przeprowadzanie różnego rodzaju autotestów dysku. Smartctl obsługuje również niektóre funkcje niezwiązane ze SMART.

Wyświetlenie wszystkich informacji o dysku:

smartctl -a /dev/sdb
smartctl 5.41 2011-06-09 r3365 [x86_64-linux-3.2.0-48-generic] (local build)
Copyright (C) 2002-11 by Bruce Allen, http://smartmontools.sourceforge.net
START OF INFORMATION SECTION
Model Family: Western Digital RE4 Serial ATA
Device Model: WDC WD5003ABYX-01WERA1
Serial Number: WD-WMAYP5108832
(...)

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 180 180 051 Pre-fail Always - 476055 (mało ważne)
3 Spin_Up_Time 0x0027 139 138 021 Pre-fail Always - 4025
4 Start_Stop_Count 0x0032 100 100 000 Old_age Always - 24
5 Reallocated_Sector_Ct 0x0033 199 199 140 Pre-fail Always - 40 (WAŻNE)
7 Seek_Error_Rate 0x002e 200 200 000 Old_age Always - 0
9 Power_On_Hours 0x0032 094 094 000 Old_age Always - 4545
10 Spin_Retry_Count 0x0032 100 253 000 Old_age Always - 0 - (WAŻNE)
11 Calibration_Retry_Count 0x0032 100 253 000 Old_age Always - 0
12 Power_Cycle_Count 0x0032 100 100 000 Old_age Always - 22
192 Power-Off_Retract_Count 0x0032 200 200 000 Old_age Always - 21
193 Load_Cycle_Count 0x0032 200 200 000 Old_age Always - 2
194 Temperature_Celsius 0x0022 105 082 000 Old_age Always - 38
196 Reallocated_Event_Count 0x0032 160 160 000 Old_age Always - 40 (WAŻNE)
197 Current_Pending_Sector 0x0032 200 198 000 Old_age Always - 0
198 Offline_Uncorrectable 0x0030 200 198 000 Old_age Offline - 49 (WAŻNE)
199 UDMA_CRC_Error_Count 0x0032 200 200 000 Old_age Always - 0
200 Multi_Zone_Error_Rate 0x0008 200 001 000 Old_age Offline - 0

Nie każdy dysk musi mieć wszystkie powyższe parametry lub parametry, które zostały opisane poniżej. Niektóre dyski mogą też mieć inne parametry które nie zostały tutaj wymienione. Każdy parametr ma kilka wartości:

  • Curent – próg wystąpienia błedu
  • Worst – wartość progowa dla modelu dysku
  • Treshold – najgorsza wartość (poziom krytyczny) przy jakiej były problemy odczytu RAW
  • Data – wartość na chwilę obecną

Kluczowe parametry

Cztery najbardziej czułe parametry SMART, niezerowa wartość w tych polach zwiększa prawdopodobieństwo wystąpienia awarii dysku w ciągu 60 dni odpowiednio ():

  • Error count (39x)
  • Reallocation count (14x)
  • Off-line reallocation count (21x)
  • Number of sectors “on probation.” (16x)

Opis parametrów SMART

  • 01 Raw Read Error Rate - Częstotliwość błedów podczas odczytu. (MAŁO WAŻNE)
  • 02 Throughput Performance – Łączna (ogólna) sprawność dysku. Jeśli wartość tego atrybutu się obniża jest duża szansa, że zbliżają się problemy z dyskiem. Nie jest to błąd krytyczny. Niestety nie każdy program monitoruję tą wartość.
  • 03 Spin Up Time – Średni czas na rozkręcenie (rozpędzania) tależy (od 0 obr/min do pełnej prędkości). Wartość RAW tego atrybutu wyraża czas w sekundach lub milisekundach. Zależnie od modelu dysku. Nie jest to błąd krytyczny, ale wysokie czasy rozpędzania talerzy świadczą o pojawiających sie problemach z układami mechanicznymi dysku.
  • 04 Start/Stop Count – Wartość RAW tego atrybutu określa liczbę cyli start/stop dysku. Nie jest to błąd krytyczny, ale w połączeniu z parametrem 09 Power-On Time Count i 10 Spin Retry Count daje obraz o sposobie użytkowania dysku. Czas startu dysku powinien być zblizony do ilości prób rozpędzania talerzy. Zbyt duże różnice pomiędzy tymi parametrami swiadczą o problemie z zasilaniem dysku, który uruchamia sie poprawnie, ale nie rozpędza talerzy. Nie tylko jest to wina zasilania.
  • 05 Reallocated Sectors Count - Ilość realokowanych sektorów (określanych również jako: „bady”, „bad sectors”). W momencie gdy dysk napotyka błąd odczytu/zapisu/weryfikacji, oznacza ten sektor jako realokowany i przenosi dane do specjalnego zarezerwowanego obszaru (obszaru rezerwowego). Proces ten jest również określany mianem remapowania a realokowane sektory określa się remapami. To właśnie dlatego, na nowoczesnych dyskach, nie widzimy „bad bloków” podczas testów powierzchni – jest to błąd krytyczny, świadczy o powstaniu logicznych lub fizycznych „badów”. Odczytując tą wartość możemy stierdzić czy posiadamy na dysku „bad sectory”. (WAŻNE)
  • 06 Read Channel Margin – Rezerwa kanału podczas odczytu danych. Funkcja tego atrybutu nie jest objęta specyfikacją. Nie informuje o błędzie krytycznym.
  • 07 Seek Error Rate – Częstość błędów wyszukiwania głowic magnetycznych. W razie uszkodzenia mechanicznego systemu pozycjonowania, uszkodzenia serwa albo termicznej rozszerzalności dysku, ilość błędów wyszukiwania wzrasta. Więcej błedów wyszukiwania oznacza pogarszanie się stanu powierzchni dysku i podsystemu mechanicznego dysku. Nie jest to błąd krytyczny, ale warto go monitorować.
  • 08 Seek Time Performance – przeciętna wydajność operacji wyszukiwania głowic magnetycznych. Jeśli wartość atrybutu maleje, jest to oznaka problemów z podsystemem mechanicznym dysku.
  • 09 Power-On Time – Ilość godzin w stanie zasialnia. Wartość RAW atrybutu odpowiada łącznej ilości godzin (lub minut, sekund, w zależności od producenta) przepracowanych przez dysk. Zmniejszenie się tej wartości do poziomu krytycznego (threshold) wskazuje na zmniejszenie się parametru MTBF (średni czas między awariami). Niemniej, w rzeczywistości, nawet jeśli MTBF zmaleje do zera, nie oznacza to że zasoby MTBF całkowicie się wyczerpały i dysk przestanie działać.
  • 10 0A Spin Retry Count - Ilość ponowień prób rozpędzenia tależy. Atrybut ten przechowuje łączną ilość prób uruchomienia tależy przed osiągnięciem pełnej szybkości obrotowej (pod warunkiem, że pierwsza próba nie powiodła się). Spadek tego atrybutu jest oznaką problemów z podsystemem mechanicznym dysku. (WAŻNE) 
  • 11 0B Recalibration Retries - Atrybut ten wskazuje liczbę rządań rekalibracji (po warunkiem, że pierwsza próba nie powiodła się). Spadek tego atrybutu jest oznaką problemów z podsystemem mechanicznym dysku.
  • 12 0C Device Power Cycle Count - Atrybut ten określa łączną ilość pełnych cykli zasilania dysku.
  • 13 0D Soft Read Error Rate – Jest to ilość programowych błędów odczytu występujących podczas odczytu danych z powierzchni dysku.
  • 14 0E G-Sense Error Rate – częstotliwość występowania błędów spowodowanych wstrząsem. Atrybut ten przechowuje wskazania czujnika przeciążeń i podaje łączną ilość błędów występujących jako rezultat wewnętrznych przeciążeń (upuszczenia dysku, niewłaściwej instalacji, i tp.).
  • 15 0F Power Cycle Count – Atrybut ten określa ile razy dysk był wyłączany. Właściwie to określa ilość naprawionych cykli włanczania dysku. W połączeniu z parameterm 04 Start/Stop Countinformuje o problemie z zasilaniem dysku.
  • 193 C1 Load/Unload Cycle Count – Ilość cykli parkowania/wyparkowania ze strefy parkowania (Landing Zone).
  • 194 C2 Temperature – Temperatura dysku twardego. Wartość RAW tego atrybutu podaje wskazania wbudowanego czujnika ciepła (w stopniach Celsjucza). Czesto zdaża się ,że czujnik temperatury jest uszkodzony więc wartość ta jest bardzo duża lub wogóle nie monitorowana.
  • 196 C4 Reallocation Event Count – Ilość operacji remapowania (przenoszenia danych z uszkodzonego sektora do specjalnego zarezerwowanego obszaru – obszaru rezerwowego). Wartość RAW tego atrybutu określa łączną ilość prób transferu danych z realokowanego sektora do obszaru rezerwowego. Liczone sa zarówno próby udane jak i nieudane. Jest to nie wątpliwie jeden z wżniejszych parametrów, dzieki któremu możemy usunąć poprzez remap/zerowanie kolejne (będące w drodze) bad sectory. (WAŻNE) 
  • 197 C5 Current Pending Sector Count – Parametr ten określa iczbę sektorów niestabilnych (oczekujących na remapowanie). Dysk podczas próbuy odczytu/zapisu odznaczył te sektory jako niestabilne. Bedą one oczekiwać na remap powierzchni talerz. Jeżeli tego nie zrobimy wówczas dysk przeniesie je do obszaru Reallocated Sectors Count, a tym samym powstaną nowe bad sectory. (Jest to błąd jak najbardziej krytyczny i warto go monitorować.)
  • 198 C6 Off-line Uncorrectable Sector Count – Ilość niekorygowalnych błędów. Wartość RAW tego atrybutu wskazuje łączną ilość niekorygowalnych błędów podczas odczytu/zapisu sektora. Wzrost wartości tego atrybutu wskazuje na ewidentne defekty powierzchni dysku i/lub problemy z podsystemem mechanicznym dysku. Jest to błąd krytyczny, świadczy o poważnym uszkodzeniu tablicy talerza lub nadchodzącym uszkodzeniu mechanizmu dysku. (WAŻNE) 
  • 199 C7 UltraDMA CRC Error Count – Łączna ilość błędów CRC w trybie UltraDMA. Wartość RAW atrybutu wskazuje ilość błędów wykrytych przez CRC (CRC Interfejsu) podczas przesyłania danych w trybie UltraDMA. Wysokie wartości świadczą o uszkodzeniu podzespołów elektronicznych dysku. Jednocześnie parametr ten informuje nas o tym, że dysk ma problemy w komunikacji z kontrolerem (dysk↔płyta←dysk). Najczęstszą przyczyną pojawiania sie tego błędu jest: uszkodzona wstęga (taśma), fiksujący zasilacz, uszkodzona elektronika dysku, uszkodzona elektronika płyty głównej.
  • 200 C8 Write Error Rate (Multi Zone Error Rate) - Częstość błędów zapisu. Atrybut ten wskazuje na łączną ilość błędów zapisu podczas zapisywania sektora. Im wyższa wartość RAW, tym gorszy stan powierzchni dysku i/lub mechanicznego podsystemu. W połączeniu z parametrem Raw Read Error Rate informuje nas o stanie talerzy, a włąściwie zapisu na ich powierzchni.

Pozostałe parametry:

  • Disk Shift – Przesunięcie dysków od osi. Wartość RAW pokazuje jak bardzo dysk został przesunięty. Jednostka miary jest nieznana. UWAGA: Przesunięcie dysków jest możliwym rezultatem silnego uderzenia lub upadku. Niewątpliwie błąd krytyczy.
  • Loaded Hours -Użycie akuratora głowic magnetycznych spowodowane normalną eksploatacją. Liczy się tylko czas działania akuratora.
  • Load/Unload Retry Count – Użycie akuratora głowic magnetycznych spowodowane licznymi wystąpienia operacji takich jak: odczyt, zapis, pozcjonowanie głowic i tp. Liczy się tylko czas gdy głowice były w stanie działania.
  • Load Friction - Użycie akuratora głowic magnetycznych spowodowane tarciem mechanicznych części dysku. Liczy się tylko czas gdy głowice były w stanie działania.
  • Load-in Time – Łączny czas działania akuratora głowic. Atrybut ten wskazuje łączny czas w którym dysk był obciążony (przy założeniu, że głowice były w stanie działania, poza obszarem parkowania).
  • Torque Amplification Count - Ilość prób rozkręcenia tależy dysku.
  • GMR Head Amplitude – Amplituda drgań głowic (GMR-head) w czasie pracy.
  • Head Flying Hours – Czas w jakim głowica jest pozycjonowana.
  • Read Error Retry Rate – częstotliwość występowania błędów podczas odczytu.

SMART - Testy

Error:

# smartctl -l error /dev/sdb
SMART Error Log Version: 1
No Errors Logged

Selftest:

smartctl -l selftest /dev/sdb
smartctl 5.41 2011-06-09 r3365 [x86_64-linux-3.2.0-48-generic] (local build)
Copyright (C) 2002-11 by Bruce Allen, http://smartmontools.sourceforge.net
START OF READ SMART DATA SECTION
SMART Self-test log structure revision number 1
Num Test_Description Status Remaining LifeTime(hours) LBA_of_first_error
# 1 Short offline Completed without error 00% 4546 -
# 2 Conveyance offline Completed without error 00% 4545 -
# 3 Extended offline Completed without error 00% 4544 -
# 4 Short offline Completed without error 00% 4543 -

Selective:

smartctl -l selective /dev/sdb
SMART Selective self-test log data structure revision number 1
SPAN MIN_LBA MAX_LBA CURRENT_TEST_STATUS
1 0 0 Not_testing
2 0 0 Not_testing
3 0 0 Not_testing
4 0 0 Not_testing
5 0 0 Not_testing
Selective self-test flags (0x0):
After scanning selected spans, do NOT read-scan remainder of disk.
If Selective self-test is pending on pow

Powiązane strony:

  1. Usuwanie bad sektorów (hdparm) - Jak usunąć bad sektory?
  2. Narzędzia Linux - Hdparm - (Zarządzanie dyskami oraz testy przepustowości)
  3. Wymazywanie danych z dysku (dd, hdparm, shred) - Jak usunąć dane z dysku?
  4. Dysk NVMe oznaczony przez BIOS jako uszkodzony w płytach głównych Supermicro (NVM Express Controller Failed)