Odpověď hned: Jedno číslo v CrystalDiskInfo není diagnóza. Samsung 990 Pro s původním firmwarem 0B2QJXD7 hlásil úbytek „zdraví” o desítky procent po pár terabajtech zápisu a byla to chyba firmwaru; Crucial MX500 posílá hlídačům poplach „pending sektor”, přestože Micron tímhle atributem počítá ECC události; WD Green s IntelliParkem nasbírá statisíce parkovacích cyklů jen proto, že má z výroby časovač na 8 sekund. A opačně: podle dat Backblaze skoro čtvrtina disků selhala, aniž by kterýkoli z pěti klíčových atributů opustil nulu. Rozhodujte podle několika atributů s váhou, podle trendu a podle toho, co disk dělá — ne podle procenta na obrazovce.
Jak SMART číst, které čtyři atributy sledovat a jak zní umírající disk, máme v článku Jak poznat, že HDD nebo SSD umírá. Tenhle text na něj navazuje: řeší situace, kdy stejné atributy klamou. O skutečných hodinách provozu u Seagate (FARM log) a o teplotách NVMe píšeme zvlášť.
Falešný poplach: SMART hlásí vadu, která není
Samsung 990 Pro: opotřebení, které vyrobil firmware
Disk přišel na trh v listopadu 2022 s firmwarem 0B2QJXD7. Během týdnů se množila hlášení, že Percentage Used roste a „zdraví” v Samsung Magician i CrystalDiskInfo padá nesmyslným tempem: podle shrnutí Rossmann Group ztráceli uživatelé 10–30 % během dnů při zápisu pod 2 TB — u 2TB modelu s deklarovanou životností 1 200 TBW. Samsung přiznal, že „anomálie byly způsobeny problémy ve firmwaru”, a 13. února 2023 vydal přes Magician firmware 1B2QJXD7.
Podstatné je, co oprava neudělá: hodnoty SMART se po aktualizaci nevracejí na tovární stav. Disk, který stihl spadnout na 78 %, na 78 % zůstane a odtud stárne normálně. Procento takového kusu tedy není údaj o opotřebení NAND, ale záznam o softwarové chybě. U 990 Pro rozhoduje něco jiného: verze firmwaru (smartctl -i nebo Magician), nenulové Media and Data Integrity Errors, Critical Warning a Available Spare pod prahem. Když tyhle položky mlčí, nízké procento po staré chybě není důvod k výměně. A protože i podporovaná aktualizace může podle Tom’s Hardware v malém procentu případů selhat a disk znehodnotit, flashuje se až po záloze.
Crucial MX500: „pending sektor”, který není sektor
Typický scénář: Proxmox, TrueNAS nebo smartd pošle e-mail „1 Currently unreadable (pending) sectors”, za hodinu přijde druhý, že hodnota je zase 0, a za pár dní se to opakuje. Na fóru Proxmoxu to popisuje majitel CT1000MX500SSD1, kterému ruční smartctl žádný vadný sektor neukázal.
Vysvětlení je v dokumentaci výrobce. Micron v technické poznámce TN-FD-22 definuje atribut 197 (C5h) jako Current Pending ECC Count: surová hodnota je „celkový počet ECC událostí zjištěných při příkazech hostitele (například READ) nebo při operacích na pozadí”. Normalizovaná aktuální i nejhorší hodnota jsou natvrdo 100, takže tímhle atributem disk nikdy nespadne pod práh. Není to sektor čekající na přemapování, ale počítadlo opravených chyb, které se objeví a zase zmizí. Nástroje, které 197 automaticky překládají jako „pending sector”, z toho udělají kritickou chybu.
Projekt smartmontools to řeší v databázi disků: záznam pro Crucial/Micron client SSD (MX100 až MX500, BX500) přejmenovává atribut na Current_Pending_ECC_Cnt s poznámkou, že u MX500 hodnota „může přeskakovat 0 ↔ 1” (ticket #1227). Aktualizace databáze (update-smart-drivedb) poplach v smartd zastaví. Ve vláknech se zmiňují i firmwary M3CR022 a M3CR023 jako možná oprava; oficiální changelog, který by to potvrdil, jsme nedohledali. U MX500 sledujte atributy 5 (Reallocated NAND Blocks) a 202 (Percent Lifetime Remaining). Když 197 zablikalo a atribut 5 se nehnul, nestalo se nic.
WD Green s IntelliParkem: statisíce parkování, které nastavil výrobce
WD Green (a podle hlášení uživatelů i některé další řady WD) má ve firmwaru časovač „idle3”, který po 8 sekundách nečinnosti odpaří hlavy z ploten na parkovací rampu — WD tu funkci označuje jako IntelliPark. Ve Windows se disk v klidu opravdu nudí. V Linuxu, v NAS nebo pod čímkoli, co průběžně zapisuje metadata, ho systém každých pár sekund zase probudí. Manjaro wiki popisuje 100 a více zaparkování za hodinu, StorageReview naměřil v Synology NAS s WD20EARS nárůst o 600–800 cyklů denně a uživatel na fóru WD hlásil u nového WD Red WD30EFRX 1 200 cyklů za prvních 24 hodin.
Podle specifikace WD Green (WD5000AZRX až WD40EZRX) je disk navržený na 300 000 load/unload cyklů. Při stovce cyklů za hodinu je to zhruba čtyři měsíce provozu — a atribut 193 Load Cycle Count pak ukazuje číslo, které v nástrojích vypadá jako blížící se konec. Manjaro wiki uvádí kus s 1 991 353 cykly po 29 549 hodinách, který dál funguje. 193 je počítadlo opotřebení parkovacího mechanismu, ne chyba čtení; o plotnách vypovídají 5, 197 a 198.
Časovač jde přenastavit: oficiálním DOS nástrojem wdidle3 (/S300 nastaví 300 s, /D vypne) nebo v Linuxu balíkem idle3-tools:
sudo idle3ctl -g /dev/sda # aktuální hodnota idle3 časovače
sudo idle3ctl -s 129 /dev/sda # nastaví 30 s
sudo idle3ctl -d /dev/sda # vypne parkování
Změna se projeví až po úplném vypnutí a zapnutí disku, restart nestačí. Autoři idle3-tools nástroj označují za experimentální a přístup k nízkoúrovňovým datům disku je na vlastní riziko — i tady nejdřív záloha.
Falešné bezpečí: SMART mlčí a disk umírá
Backblaze v roce 2016 vyhodnotil 67 814 disků ve svém datacentru. Z disků, které selhaly, mělo 76,7 % alespoň jeden z atributů 5, 187, 188, 197 a 198 nenulový. Zbylých 23,3 % odešlo s nulami ve všech pěti. Zároveň 4,2 % disků v provozu mělo nenulovou hodnotu také — atributy hlásí riziko, ne jistotu, a to ani jedním směrem.
Důvod je prostý: SMART počítá jen to, čeho si disk sám všiml při čtení a zápisu. Slábnoucí hlava, ložisko, motor ani elektronika počítadlo nemají. Disk s čistým SMART, který začal cvakat, zpomalil na zlomek rychlosti nebo se odpojuje při zátěži, má mechanickou nebo elektrickou závadu bez ohledu na nápis „Dobrý”.
U SSD je to ostřejší, protože ke smrti obvykle nevede opotřebení, které Percentage Used sleduje, ale řadič a firmware. HPE v listopadu 2019 varovalo, že jeho SAS SSD s firmwarem starším než HPD8 selžou přesně po 32 768 hodinách provozu; po selhání nejde obnovit disk ani data a kusy nasazené současně odejdou téměř současně — jeden správce popsal šest SSD mrtvých během 15 minut. Přenosné SanDisk Extreme a Extreme Pro V2 (SDSSDE61-4T00, SDSSDE81-4T00) se v roce 2023 hlásily větou „The disk you attached was not readable by this computer” bez předchozího varování; WD slíbil v květnu firmware, v srpnu přišla hromadná žaloba. Proč je záchrana dat z SSD v takové chvíli jiná disciplína než u HDD, máme rozepsané zvlášť.
Třetí zdroj falešného klidu je USB. Disk v externím boxu odpovídá jen tehdy, když můstek předává ATA příkazy (SAT); smartctl k tomu má -d sat a zvláštní typy pro JMicron, Cypress nebo Sunplus. U části JMicron můstků nefungují 48bitové ATA příkazy, takže rozšířený log chyb (-l xerror) je vypnutý; NVMe v USB boxu jde číst jen přes můstky ASMedia, JMicron a Realtek (-d sntasmedia, -d sntjmicron, -d sntrealtek). Když nástroj u externího disku neukáže nic nebo „neznámý stav”, není to zdravý disk — je to nečitelný SMART.
Které atributy mají váhu
| Atribut | Co počítá | Jak číst |
|---|---|---|
| 5 Reallocated Sectors Count | sektory přemapované do rezervy | jakýkoli růst = povrch nebo hlava; jeden z pěti atributů Backblaze |
| 187 Reported Uncorrectable Errors | chyby, které nešly opravit ECC | Backblaze plánuje výměnu, jakmile je větší než 0 |
| 188 Command Timeout | příkazy zrušené kvůli timeoutu disku | správně nula; růst číst spolu s 5 a 197 |
| 197 Current Pending Sector Count | sektory čekající na přemapování po neopravitelném čtení | HDD: zálohovat hned; Micron/Crucial SSD: ECC počítadlo |
| 198 Offline Uncorrectable | neopravitelné chyby při offline čtení | stejná váha jako 197 |
| 199 UDMA CRC Error Count | chyby přenosu po kabelu | kabel, port, řadič — ne plotny; hodnota sama neklesá |
| 193 Load Cycle Count | zaparkování hlav | opotřebení mechanismu, ne chyba dat (IntelliPark) |
| NVMe Critical Warning | příznaky: spare pod prahem, teplota, spolehlivost, read-only | smartctl -H u NVMe čte jen tohle |
| NVMe Available Spare / Threshold | zbývající rezerva a její práh | pod prahem = disk dojíždí na rezervách |
| NVMe Percentage Used | odhad výrobce o spotřebované životnosti | 100 nemusí znamenat selhání, smí přesáhnout 100; u 990 Pro 0B2QJXD7 chybný |
| NVMe Media and Data Integrity Errors | neopravené chyby integrity (ECC, CRC, LBA tag) | nenulové a rostoucí = zálohovat hned |
Přehled případů: co SMART hlásí a co je pravda
| Model / situace | Co SMART hlásí | Skutečnost | Co dělat |
|---|---|---|---|
| Samsung 990 Pro, fw 0B2QJXD7 | Percentage Used roste, zdraví padá o procenta za dny | chyba firmwaru, ne opotřebení | ověřit firmware, po záloze 1B2QJXD7; rozhodovat podle Media Errors a Critical Warning |
| Crucial MX500 | 197 = 1, pak 0; smartd posílá poplachy | u Micronu je 197 ECC počítadlo | aktualizovat drivedb smartmontools; hlídat 5 a 202 |
| WD Green (idle3 8 s) | 193 ve stovkách tisíc | parkovací časovač, limit 300 000 | wdidle3 / idle3ctl, vypnout a zapnout; hlídat 5/197/198 |
| HDD s čistým SMART, cvaká nebo mizí | nic | mechanická nebo elektrická závada bez počítadla | nepouštět znovu, první pomoc a laboratoř |
| SSD s čistým SMART, náhle nečitelné | nic | řadič/firmware (HPE 32 768 h, SanDisk Extreme V2) | vypnout, nezkoušet opravy, laboratoř |
| Disk v USB boxu bez SMART | prázdno nebo „neznámý” | můstek nepředává příkazy | -d sat, nebo připojit přímo na SATA |
Co znamená PASSED a proč krátký self-test není důkaz
smartctl -H u ATA disku vypíše PASSED, když příkaz SMART RETURN STATUS nehlásí selhání a žádný atribut označený jako pre-fail neklesl na svůj práh nebo pod něj. Prahy určuje výrobce a porovnávají se normalizované hodnoty, ne surové počty: disk s 12 pending a 40 přemapovanými sektory je PASSED, dokud normalizovaná hodnota drží nad prahem. U NVMe je test ještě užší — PASSED znamená jen nulový bajt Critical Warning.
CrystalDiskInfo počítá jinak: „Pozor” nastaví, jakmile surová hodnota atributů 05, C5 nebo C6 dosáhne nastaveného prahu (výchozí je 1), u SSD při zbývající životnosti 10 % a méně; „Špatný” až při poklesu pod práh výrobce. Dva nástroje, dvě definice zdraví — a ani jedna nečte celý povrch.
Krátký self-test prověří elektroniku, mechaniku a čtení jen z části disku; podle Wikipedie trvá obvykle pod dvě minuty, podle manuálu smartctl „obvykle do deseti minut”. Rozšířený test čte celý povrch a trvá hodiny. Krátký test, který prošel, nic neříká o sektoru na konci plotny, na který se vůbec nedostal.
Jak to číst v CrystalDiskInfo a smartctl
smartctl -a /dev/sda # zdraví, atributy, log self-testů
smartctl -x /dev/sda # navíc statistiky zařízení, SCT teploty, SATA phy log
smartctl -a -d sat /dev/sdb # disk v USB boxu přes SAT
smartctl -i /dev/nvme0 # model a verze firmwaru (990 Pro: 0B2QJXD7 vs. 1B2QJXD7)
smartctl -a /dev/nvme0 # NVMe: Critical Warning, spare, Percentage Used, Media Errors
nvme smart-log /dev/nvme0 # totéž z nvme-cli
Výstup -x se hodí u sporných případů: SATA phy log ukáže, jestli chyby 199 rostou s konkrétním kabelem, a u WD Green uvidíte 193 vedle 5 a 197 v jedné tabulce. V CrystalDiskInfo se dívejte na surovou hodnotu a na verzi firmwaru v hlavičce — jméno atributu nástroj bere z obecné tabulky, takže u MX500 uvidíte „Current Pending Sector Count” i tam, kde Micron myslí ECC.
Kdy zálohovat hned a kdy do laboratoře
Zálohovat hned, dokud disk čte: 5, 197 nebo 198 nenulové a při druhém měření vyšší; 187 větší než 0; u NVMe nenulový Critical Warning, Available Spare pod prahem nebo rostoucí Media Errors. Kopírujte jedním průchodem, sektorově a jen pro čtení — proč ne po souborech a proč ne opakovaně, vysvětluje článek o vadných sektorech.
Rovnou do laboratoře: disk cvaká nebo brousí, není vidět v BIOSu, hlásí nulovou kapacitu, odpojuje se při zátěži, SMART nejde přečíst, nebo pending sektory přibývají v řádu hodin. Totéž u členů RAID pole a u SSD, které se náhle přestalo hlásit — každý další start je pokus na jediné kopii dat.
Nic nedělat: MX500 s blikajícím 197 a nulou v atributu 5; 990 Pro s nízkým procentem po staré chybě, ale s čistými Media Errors; WD Green s vysokým 193 a nulami v 5/197/198. Tady se přenastavuje časovač nebo databáze nástroje, ne kupuje disk.
Co nedělat
- Spouštět dlouhý self-test na disku s pending sektory. Hodiny čtení přes oslabené plochy jsou přesně ta zátěž, která z pending sektorů udělá neopravitelné.
- Pouštět chkdsk /r nebo „opravu” sektorů. Zapisuje a nutí disk k přemapování; kdy chkdsk pomůže a kdy ne, máme zvlášť.
- Restartovat a přepojovat. Každý rozběh a každé připojení USB je další průjezd hlav nad poškozeným místem.
- Flashovat firmware na jedinou kopii dat. I podporovaná aktualizace může selhat; nejdřív záloha.
- Umlčet varování zvýšením prahu v CrystalDiskInfo. Změna zobrazení disk neopraví; má smysl jen tam, kde víte, proč atribut lže (MX500, IntelliPark).
- Rozhodovat podle jednoho čísla. Vyhodit zdravý 990 Pro kvůli procentu je stejná chyba jako nechat cvakající disk v provozu, protože je PASSED.
Často se ptáte
990 Pro ukazuje 78 % zdraví po pár měsících. Je vadný?
Nejdřív verze firmwaru. Pokud disk běžel na 0B2QJXD7, je procento pozůstatkem chyby, kterou opravil firmware 1B2QJXD7 z února 2023; hodnota se po aktualizaci nevrací. Rozhodují Media and Data Integrity Errors, Critical Warning a Available Spare — když jsou v pořádku, disk pracuje normálně.
CrystalDiskInfo hlásí u MX500 „Pozor” kvůli C5. Mám ho vyměnit?
Ne kvůli tomuhle. Micron atributem 197 počítá ECC události, ne sektory čekající na přemapování, a hodnota kolísá mezi 0 a 1. Sledujte atributy 5 a 202; v smartmontools aktualizujte databázi disků, aby atribut dostal správné jméno.
WD Green má Load Cycle Count 900 000. Umírá?
Číslo říká, že parkovací mechanismus překročil hodnotu, na kterou je navržený (300 000), ne že disk selhává. Pokud jsou 5, 197 a 198 nulové, přenastavte časovač idle3 a disk vypněte a zapněte. Do NAS nebo serveru bych ale takový kus dál nenasazoval bez záložní kopie.
SMART je PASSED, ale disk cvaká. Komu věřit?
Zvuku. PASSED znamená jen to, že žádný pre-fail atribut nedosáhl prahu; mechanickou závadu hlavy nebo motoru SMART nepočítá. Podle Backblaze skoro čtvrtina selhání proběhla s nulami ve všech pěti klíčových atributech.
Můžu důvěřovat zdraví SSD v procentech?
Jako odhadu výrobce ano, jako diagnóze ne. Percentage Used je podle specifikace NVMe odhad výrobce, 100 nemusí znamenat selhání a hodnota může jít i přes 100. SSD, které selže na řadiči nebo firmwaru, má procento v pořádku do poslední sekundy.
Pokud u disku nevíte, do které kolonky patří — číslo vypadá hrozivě, ale disk pracuje, nebo naopak SMART mlčí a disk se chová divně — nechte ho vypnutý a napište nám. Diagnostiku děláme ve vlastní laboratoři v Brně, k disku přistupujeme jen pro čtení a nejdřív řekneme, jestli jde o falešný poplach, o zálohu hned, nebo o záchranu dat.
Zdroje
- Tom’s Hardware: Samsung 990 Pro Firmware Update Addresses Failing SSD Health (13. 2. 2023)
- Rossmann Group: Samsung 990 Pro Firmware Bug and Health Loss
- Micron TN-FD-22: Client SATA SSD SMART Attribute Reference, Rev. E (kopie PDF)
- smartmontools: drivedb.h — záznam Crucial/Micron Client SSDs (atribut 197 Current_Pending_ECC_Cnt)
- Proxmox forum: smartd false positive SSD CurrentPendingSector? (MX500)
- Western Digital: WD Green Desktop Hard Drives — Spec Sheet 2879-771438 (load/unload cycles 300 000)
- StorageReview: How to Stop Excessive Load Cycles on the WD Caviar Green WD20EARS with WDIDLE3
- Manjaro Wiki: Western Digital Green — Drive Fix — Linux
- idle3-tools (SourceForge)
- WD Community: New WD30EFRX Red Drive Idle3 Timer Set to 8 Seconds (High LCC in NAS)
- Backblaze: What SMART Stats Tell Us About Hard Drives (2016)
- Backblaze: Hard Drive SMART Stats (2014)
- Computerworld: The 5 SMART stats that actually predict hard drive failure
- Wikipedia: Self-Monitoring, Analysis and Reporting Technology
- smartctl(8) — manuálová stránka (Debian)
- libnvme: nvme_smart_log — SMART / Health Information Log (definice polí)
- Crystal Dew World: CrystalDiskInfo — Health Status
- Crystal Dew World: CrystalDiskInfo — Health Status Setting
- BleepingComputer: HP Warns That Some SSD Drives Will Fail at 32,768 Hours of Use (2019)
- Tom’s Hardware: WD’s SSD Failures Stoke Class Action Lawsuit Over SanDisk Extreme Pro (2023)