SSD SMART status: disk has many bad sectors

Zcela novy SSD disk, ktery prosel kompletni diagnostikou v servisu prodejce mi pod Fedora 14 hlasi v DiskUtility SMART status: disk has many bad sectors

2816 sectoru je udajne vadnych … nezavisle testy u prodejce, ale nic takoveho neprokazaly. Prosel jsem dukladne ruzna HW orientovana fora linux komunity, ale pouze se mi potvrdilo, ze se jedna o docela rozsireny problem SSD disku pod linuxem obecne. Reseni ovsem zadne.

Tusi nekdo co s tim?

Datailni vypis je zde:

 
smartctl -a /dev/sda
smartctl 5.40 2010-10-16 r3189 [x86_64-redhat-linux-gnu] (local build)
Copyright (C) 2002-10 by Bruce Allen, http://smartmontools.sourceforge.net

=== START OF INFORMATION SECTION ===
Device Model:     RunCore SSD
Serial Number:    561009060061
Firmware Version: 320A13F0
User Capacity:    240,057,409,536 bytes
Device is:        Not in smartctl database [for details use: -P showall]
ATA Version is:   8
ATA Standard is:  ATA-8-ACS revision 6
Local Time is:    Fri Apr  1 09:53:19 2011 CEST
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

General SMART Values:
Offline data collection status:  (0x02)	Offline data collection activity
					was completed without error.
					Auto Offline Data Collection: Disabled.
Self-test execution status:      (   0)	The previous self-test routine completed
					without error or no self-test has ever 
					been run.
Total time to complete Offline 
data collection: 		 (   0) seconds.
Offline data collection
capabilities: 			 (0x7f) SMART execute Offline immediate.
					Auto Offline data collection on/off support.
					Abort Offline collection upon new
					command.
					Offline surface scan supported.
					Self-test supported.
					Conveyance Self-test supported.
					Selective Self-test supported.
SMART capabilities:            (0x0003)	Saves SMART data before entering
					power-saving mode.
					Supports SMART auto save timer.
Error logging capability:        (0x01)	Error logging supported.
					General Purpose Logging supported.
Short self-test routine 
recommended polling time: 	 (   1) minutes.
Extended self-test routine
recommended polling time: 	 (  48) minutes.
Conveyance self-test routine
recommended polling time: 	 (   2) minutes.
SCT capabilities: 	       (0x003d)	SCT Status supported.
					SCT Error Recovery Control supported.
					SCT Feature Control supported.
					SCT Data Table supported.

SMART Attributes Data Structure revision number: 10
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  1 Raw_Read_Error_Rate     0x000f   104   099   050    Pre-fail  Always       -       8058382
  5 Reallocated_Sector_Ct   0x0033   092   092   003    Pre-fail  Always       -       2816
  9 Power_On_Hours          0x0032   100   100   000    Old_age   Always       -       131030862266514
 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       167
171 Unknown_Attribute       0x0000   000   000   000    Old_age   Offline      -       0
172 Unknown_Attribute       0x0000   000   000   000    Old_age   Offline      -       0
174 Unknown_Attribute       0x0030   000   000   000    Old_age   Offline      -       21
177 Wear_Leveling_Count     0x0000   000   000   ---    Old_age   Offline      -       0
181 Program_Fail_Cnt_Total  0x0000   000   000   000    Old_age   Offline      -       0
182 Erase_Fail_Count_Total  0x0000   000   000   000    Old_age   Offline      -       0
187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0
194 Temperature_Celsius     0x0022   035   040   000    Old_age   Always       -       35 (Min/Max 0/40)
195 Hardware_ECC_Recovered  0x001c   104   099   000    Old_age   Offline      -       8058382
196 Reallocated_Event_Count 0x0033   100   100   003    Pre-fail  Always       -       0
231 Temperature_Celsius     0x0013   088   088   010    Pre-fail  Always       -       1
233 Media_Wearout_Indicator 0x0000   000   000   000    Old_age   Offline      -       256
234 Unknown_Attribute       0x0000   000   000   000    Old_age   Offline      -       384
241 Total_LBAs_Written      0x0032   000   000   000    Old_age   Always       -       384
242 Total_LBAs_Read         0x0032   000   000   000    Old_age   Always       -       448

Error SMART Error Log Read failed: Input/output error
Smartctl: SMART Error Log Read Failed
Error SMART Error Self-Test Log Read failed: Input/output error
Smartctl: SMART Self Test Log Read Failed
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 power-up, resume after 0 minute delay.

pod linuxem? Co má blbé esesdéčko společného s linuxem? SMART údaje jsou vyčtené z řadiče disku, to přece nejsou nějaké “linuxové testy”.

Nejak nerozumim…co mate na mysli.

Pod windows v servisu prodejce SMART nehlasi zadny problem, ale pod linuxem SMART hlasi “bad sectors”.

snazim se zjistit, o co jde …

Na mysli mám to, že SMART nemá s linuxem nic společného. Utilita smartctl jen přečte data, která se nacházejí v tabulce v hw disku. Ty hlášky o Erroru jsou zřejmé - ještě se neprováděly žádné testy, takže se nedají logy číst. Až provedete testy, tak tam asi logy budou a místo chyb se vypíše jejich obsah. Přečtěte si manuál k smartctl.
Jinou věcí jsou raw data s chybama, tam záleží na interpretaci. Často je hardware disků nevyplňují správně nebo vůbec, často jsou tam hausnumera (některé seagate disky a pod.) Na druhou stranu ta data vypadají reálně, vzhledem k hovadské nátuře SSD tam dochází často k chybám, ale řadič je schopen bez problému ve všech případech provést korekci podle ECC. Takže se žádné chyby neprojevují. Také realokuje pomršené sektory, což je v pořádku. Zcela nový disk to není (viz power on counts), údaj o době provozu je nesmyslně vysoký, asi fake. Takže disk je v “pořádku” i pod linuxem, nejen pod windows. Pokud to disk umí, pusťte na to SMART test. Ale je možné, že to SSD nějak simulujou nebo nepodporujou.
Přečtěte si něco o SSD a o SMARTU, než začnete tvrdit něco o “rozšířeném problému pod linuxem”. Že jdou sektory SSD do háje po každém tvrdším fotonu, který jimi proletí je fakt, který výrobci moc nezdůrazňují - pak se najdou i tací, kteří si myslí, že SSD je dobré médium na archivaci dat…

o “rozšířeném problému pod linuxem” mluvim proto, ze identicky problem s hlasenim SMART status: disk has many bad sectors v souvislosti s SSD disky reportuje rada lidi a dost z nich tvrdi, ze pod jinym OS (Windows, MacOS) se analogicky problem neobjevuje … moje hypoteza tedy je , ze je problem na strane interpretace dat radice disku … coz jsem souhrne nazval problemem linuxu s SSD disky.

Exituje nejaky nezavisly zpusob jak pod linuxem overit, ze disk ma problemy nebo ne?

Takže protože Windows a Mac neinformují o počtu realokovaných sektorů, tak nemají problém? To, že linux informuje o reálném stavu disku přece není problém. Ach jo. Tak si vypněte SMART službu a nic vám nebude hlásit a budete stejně šťastný, jako ve Windows…

Kdybyste si přečet manuál ke smartctl, tak byste se neptal, jak stav disku ověřit. Kdybyste si aspoň dal nápovědu (smartctl --help). Tak byste viděl, že test se spustí parametrem -t (třeba -t long). Takže si vyhrajte smart hodnoty (smartctl -a /dev/sda), pak spusťte test (ten test nedělá linux, ty testy si dělá disk sám, pokud je umí) a až skončí, tak si vyhrajte znova hodnoty. Pokud ohlásí test chyby nebo pokud nějak zásadně naroste počet realokovaných sektorů, tak to svědčí o tom, že disk jde do kytek. Pozor, u SSD se počítá s tím, že se disk mrší sám od sebe, takže může být realokována klidně i čtvrtina disku a furt to ještě z pohledu servisu není chyba! Pokud to bude opravdu špatné, ne jen pár mega jako teď, tak to hoďte do popelnice a kupte si normální disk.

OK … staci tuknout co je vhodne udelat. Manualy cte kazdy, kdo neco potrebuje vyresit, vcetne mne.

No tak jen pro informaci vsem, ktere by to pripadne zajimalo:
Realita je takova, ze disk SSD RunCore Pro V 240GB testy tohoto typu (napr. smartctl -t long /dev/sda a pod.) velice pravdepodobne nezvlada a neni tudiz schopen poskytnout nasledne informace, ktere by se meli zobrazit pomoci
smartctl -a /dev/sda jako SMART error log. Po zadani prikazu smartctl -t log /dev/sda ani dalsich podobnych se vubec nic nezacne dit = test se vubec nespusti!!! … patram ted v logu co se vlastne deje, pokud se vubec neco deje.

Na druhou stranu test: badblocks -sv /dev/sda udava vysledek, ze neexistuji zadne chybne bloky. Takze muj zaver je zatim takovy, ze disk bude pravdepodobne v poradku, ale problem maji smart sluzby, ktere asi nejsou at uz na strane disku nebo linuxu plne kompatibilni s timto konkretnim SSD diskem.

Presto, ze SSD diskum vadi kazdy “tvrdsi foton”, mam prumernou rychlost zapisu 250MB/s a cteni 285MB/s, coz je hlavni duvod proc ho pouzivam. Pokud ten disk vydrzi cca 3 roky, tak svou historickou povinnost splni. Vic od nej nezadam …:slight_smile:

nikoli “smartctl -t log /dev/sda” nýbrž “smartctl -t long /dev/sda”. Long, jako dlouhý. Test trvá normálně několik desítek minut. Navenek se nic neděje, protože ten test si dělá disk sám. Dokonce je většinou možné s diskem normálně pracovat i během testů. Výsledek, případně procenta, kolik testu už uběhlo se dá zjistit opakovaným zavoláním smartctl -a.
To že nic nenajde příkaz badblock je v pořádku, řadič disku by případné chyby stejně zachytil a realokoval dříve, než může badblock něco zjistit. Jenom by se po proběhnutí badblock -w změnil ve smartu počet realokovaných sektorů. Pokud se nezmění, tak to znamená, že disk drží.

Samozřejmě vysoká rychlost čtení a zápisu je pro některá použití zásadní. I když ten zápis 250 MBps je asi spíše jen důkazem pořádné cache. Fyzický zápis probíhá v několika krocích a musí být minimálně poloviční oproti rychlosti čtení. Já jsem se pouze vysmíval tomu, že někteří experti hodlají tenhle typ paměti používat k archivaci dat.

Data ctena prostrednictvi utility smartctl z disku mohou byt skutecne spatne interpretovana. Pravdepodobnejsi ale je, ze na disku proste SMART data k nekterym parametrum nejsou, nebo jejich interpretaci zna jen vyrobce. Tzn. vsechna hlaseni SMART chyb je potreba brat s rezervou. Zvlast kdyz vidim, ze mi to pise “Temperature = 1” a spousta atributu je “Unknown_Attribute”, protoze smartctl hodnoty jsou stejne rozmanite jako mnozstvi disku na trhu.

Doporucuji podivat se na stranky smartmontool, napr. na
http://sourceforge.net/apps/trac/smartmontools/wiki/FAQ#Iseesomestrangeoutputfromsmartctl.Whatdoesitmean