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.
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 …
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.