Bu SSD sürücüsü neden kötü sektörlerle başarısız oluyor ve tahmin edilebilir miydi?


15

Not: Bu soru daha önce konu dışı olarak kapatılmıştı. Tartışmayı okuyabilirsiniz . Burada sormamın nedenleri:

  • Bu sürücü, Zambiya kırsalındaki okullar için çevrimdışı bir içerik önbellek sunucusundadır.
  • Sunucular disk görüntülerinden oluşturulur ve tüm içerik değiştirilebilir.
  • Ucuz olmalı, çünkü Zambiya okulları bütçe sınırlıdır ve birçoğu olacaktır.
  • Ayrıca güvenilir olmak zorundadır, çünkü kötü yollarda her yol 8 saat olabilir.
  • Burada hangi sürücülerin "ultra ucuz saçmalık" olmadığını sormama izin verilmiyor.
  • Bu kriterleri karşılayan sürücüler üzerinde kendi araştırma ve deneylerimizi yapıyoruz.
  • Kötü sektörlerin üzerine yazarak (otomatik yeniden tahsis) onaramamam varsayımlarıma karşı geldi ve nedenini bilmek istedim.
  • Bir GÜVENLİK SÜRESİNİN kötü sektörleri düzeltebileceğini düşündüm, ancak sürücüyü çöpe atmadan önce başkalarının görüşlerini almak istedim.
  • SMART verilerinde hatayı tahmin edebilecek bir şeyi kaçırmış olabileceğimi düşündüm.

Bu, yaklaşık 3 aydır sahada iyi çalışan ve aniden kötü sektörler geliştiren bir Kingston 240GB SSD disktir:

smartctl 5.41 2011-06-09 r3365 [i686-linux-3.2.20-net6501-121115-1cw] (local build)
Copyright (C) 2002-11 by Bruce Allen, http://smartmontools.sourceforge.net

=== START OF INFORMATION SECTION ===
Device Model:     KINGSTON SVP200S3240G
Serial Number:    50026B7228010E5C
LU WWN Device Id: 5 0026b7 228010e5c
Firmware Version: 502ABBF0
User Capacity:    240,057,409,536 bytes [240 GB]
Sector Size:      512 bytes logical/physical
Device is:        Not in smartctl database [for details use: -P showall]
ATA Version is:   8
ATA Standard is:  ACS-2 revision 3
Local Time is:    Tue Mar  5 17:10:24 2013 CAT
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:            (0x7b) SMART execute Offline immediate.
                    Auto Offline data collection on/off support.
                    Suspend 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:          (0x0021) SCT Status 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   084   084   050    Pre-fail  Always       -       10965286670575
  5 Reallocated_Sector_Ct   0x0033   100   100   003    Pre-fail  Always       -       16
  9 Power_On_Hours          0x0032   000   000   000    Old_age   Always       -       46823733462185
 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       127
171 Unknown_Attribute       0x0032   000   000   000    Old_age   Always       -       0
172 Unknown_Attribute       0x0032   000   000   000    Old_age   Always       -       0
174 Unknown_Attribute       0x0030   000   000   000    Old_age   Offline      -       131
177 Wear_Leveling_Count     0x0000   000   000   000    Old_age   Offline      -       1
181 Program_Fail_Cnt_Total  0x0032   000   000   000    Old_age   Always       -       0
182 Erase_Fail_Count_Total  0x0032   000   000   000    Old_age   Always       -       0
187 Reported_Uncorrect      0x0032   000   000   000    Old_age   Always       -       49900
194 Temperature_Celsius     0x0022   033   078   000    Old_age   Always       -       33 (Min/Max 21/78)
195 Hardware_ECC_Recovered  0x001c   120   120   000    Old_age   Offline      -       235163887
196 Reallocated_Event_Count 0x0033   100   100   003    Pre-fail  Always       -       16
201 Soft_Read_Error_Rate    0x001c   120   120   000    Old_age   Offline      -       235163887
204 Soft_ECC_Correction     0x001c   120   120   000    Old_age   Offline      -       235163887
230 Head_Amplitude          0x0013   100   100   000    Pre-fail  Always       -       100
231 Temperature_Celsius     0x0013   100   100   010    Pre-fail  Always       -       0
233 Media_Wearout_Indicator 0x0000   000   000   000    Old_age   Offline      -       363
234 Unknown_Attribute       0x0032   000   000   000    Old_age   Always       -       208
241 Total_LBAs_Written      0x0032   000   000   000    Old_age   Always       -       208
242 Total_LBAs_Read         0x0032   000   000   000    Old_age   Always       -       1001

SMART Error Log not supported
SMART Self-test Log not supported
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.

Şimdi diskteki bazı yerlerde kötü bloklar alıyorum:

root@iPad2:~# badblocks /dev/sda -v
Checking blocks 0 to 234431063
Checking for bad blocks (read-only test): 8394752 done, 1:15 elapsed
8394756 done, 1:21 elapsed
8394757 done, 1:23 elapsed
8394758 done, 1:24 elapsed
8394759 done, 1:27 elapsed
...
190882871one, 29:49 elapsed
190882888one, 29:53 elapsed
190882889one, 29:54 elapsed
190882890one, 29:56 elapsed
190882891one, 29:58 elapsed
done                                
Pass completed, 80 bad blocks found.

Tekrarlanabilir gibi görünüyorlar ve otomatik yeniden konumlandırma başarısız oluyor, bu yüzden onlara yazarak düzeltilemiyorlar:

root@iPad2:~# badblocks /dev/sda -wvf 8394756 8394756
/dev/sda is apparently in use by the system; badblocks forced anyway.
Checking for bad blocks in read-write mode
From block 8394756 to 8394756
Testing with pattern 0xaa: 8394756
done                                
Reading and comparing: done                                
Testing with pattern 0x55: done                                
Reading and comparing: done                                
Testing with pattern 0xff: done                                
Reading and comparing: done                                
Testing with pattern 0x00: done                                
Reading and comparing: done                                
Pass completed, 1 bad blocks found.

Ve sistem günlüklerinde böyle hatalar alıyorum:

ata1.00: exception Emask 0x0 SAct 0x1 SErr 0x0 action 0x0
ata1.00: irq_stat 0x40000000
ata1.00: failed command: READ FPDMA QUEUED
ata1.00: cmd 60/08:00:08:30:00/00:00:01:00:00/40 tag 0 ncq 4096 in
         res 51/40:08:08:30:00/00:00:01:00:00/40 Emask 0x409 (media error) <F>
ata1.00: status: { DRDY ERR }
ata1.00: error: { UNC }
ata1.00: configured for UDMA/133
sd 0:0:0:0: [sda] Unhandled sense code
sd 0:0:0:0: [sda]  Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE
sd 0:0:0:0: [sda]  Sense Key : Medium Error [current] [descriptor]
Descriptor sense data with sense descriptors (in hex):
        72 03 11 04 00 00 00 0c 00 0a 80 00 00 00 00 00 
        01 00 30 08 
sd 0:0:0:0: [sda]  Add. Sense: Unrecovered read error - auto reallocate failed
sd 0:0:0:0: [sda] CDB: Read(10): 28 00 01 00 30 08 00 00 08 00
end_request: I/O error, dev sda, sector 16789512
Buffer I/O error on device sda, logical block 2098689
ata1: EH complete

Şimdi bu diskte otomatik yeniden tahsis işleminin neden başarısız olduğunu anlamıyorum. smartctlÇıktı hepsi bana para cezası görünüyor. Sadece 16 sektör yeniden tahsis edildi, bu çok fazla değil. Bu diskin sektörleri yeniden tahsis etmeyi reddetmesinin meşru bir sebebini göremiyorum. Bu SSD modeli kırık mı yoksa kötü tasarlanmış mı?

Notlar:

  • özellik 174, Kingston'un belgelerine göre "Beklenmedik Güç Kaybı" dır.
  • 131 beklenmedik güç kaybı oldukça kötü.
  • 187 (Reported_Unrectrect) özelliği, olası maksimum 65535'ten 49900'dür
  • en yüksek sıcaklık 78'C'de oldukça yüksek

En ilginç SMART sayaçları bu sürücüde Kingston tarafından gizlenmiştir. Ancak yedek sektör sayısını 196 özelliğinden çıkarabiliriz. Normalleştirilmiş değer için aşağıdaki formüle sahip Reallocated_Event_Count:

100 -(100* RBC / MRC)
RBC = Retired Block Count (Grown)
MRE = Maximum reallocation count

Normalleştirilmiş değer 100 olduğundan, bu RBC << MRE anlamına gelir, bu nedenle yeniden tahsis için mevcut tüm sektörleri tüketmeye yakın değiliz.


3
SMART verileriniz önemli bir sorun olduğunu göstermez. Donanım sorunlarının diğer olasılıklarını ortadan kaldırmak için bu diski farklı bir kablo ile farklı bir denetleyicide test ettiniz mi?
Michael Hampton

1
Bazı sektörleri tekrar tekrar okuduğu ve diğerleri tekrar tekrar hata verdiği için başka bir denetleyici / kablo denemedim. Bundan arızanın kontrolör veya kablo ile değil sürücüde olduğunu çıkarıyorum.
qris

1
Kesinliğiniz yanlış çünkü aynı şey kötü bir kontrolör veya kablo ile olabilir (kablo biraz daha düzensiz olsa da, yine de denemeye değer).
gparent

3
@gparent Tümdengelim mutlaka yanlış değildir; sadece sonucu getiren mantık. Sürüş, suçlu olabilir, ancak düşünme nedenlerinin çok az temeli vardır. Her durumda, önerildiği gibi başka bir denetleyici / kablo üzerinde test yapmalıdır.
Chris S

Evet, az önce söylediğimi düşündüm. Bence herhangi bir farkı dil engelinin bir parçası olarak güvenli bir şekilde değerlendirebilirsiniz, çünkü yorumunuzla tamamen aynı fikirdeyim.
gparent

Yanıtlar:


2

Ucuz SSD'lerin ciddi kalite sorunları var gibi görünüyor. Sürücünüzle ilgili sorunları olan birçok kullanıcı bulacaksınız. Ancak satıcıların da aynı etiket altında farklı sürücüler (örneğin, diğer NAND yongaları / denetleyicileri ile) sattığını düşünüyorum. Böylece her bir sürücü farklı davranabilir.

SMART değerleri, sürücünün yakında başarısız olacağına dair hiçbir belirti vermez. Benim durumumda aynı: Aniden sürücü hataları oluşur ve sonra disk başarısız olur.

SSD'leri kullanmanızın nedenleri nelerdir? SSD'lerin avantajlarını mekanik parça olmadığı ve toz geçirmez oldukları ve daha az ısı ürettikleri için görüyorum. Ancak bir çok dezavantaj da görüyorum.

örneğin, tek bir bellek hücresine aşınma seviyelendirme ile bile yoğun bir birimde hızlı bir şekilde ulaşılabilen yazma sayısı, örneğin günlük kaydı olan bir dosya sistemi kullandığınızda.

Elektronik, aynı zamanda yüksek nem veya yüksek sıcaklıklardan da etkilenir - geleneksel sabit sürücülerde olduğu gibi.

Bunun yerine neden daha ucuz geleneksel sabit diskler kullanmıyorsunuz ve (baskın gerekli değilse) sunucuyu, yedek olarak gerekmedikçe (sunucu kutusunda zaten mevcut olan veya çalışırken değiştirilebilir bir kafese takılana kadar) bağlı olmayan yedek sürücülerle birlikte gönderin disk farklı sunucularda kullanılabilir). Daha sonra sahadaki bir senaryo veya uzaktan (mümkünse) hazırlanabilirler.

Geleneksel sabit disklere güç verilmediği sürece, hedeflerine ulaşım zor olabilir ...

Birden çok okul sunucusu / kalıcı istemci ve güvenilir / yedekli bir ağ varsa, dağıtılmış bir dosya sistemi de güvenli bir önbellek sunucusu oluşturmaya yardımcı olabilir (örn. Glusterfs kullanarak).


Teşekkürler Brian, daha iyi yanıtım olmadığı için bu cevabı kabul ediyorum. Sabit disklerle ilgili deneyimim, sektörlerin yeniden tahsis edilebileceği ve dolayısıyla iyileşmenin mümkün olduğudur. SSD'leri kullanmanın nedenleri konusunda haklısınız. Toz geçirmezlik Zambiya için büyük bir sorundur. Sürücüler sık ​​sık yazılmaz, içeriğin çoğu statiktir. Katı hal elektroniği, ısı ve nemden paslanma eğiminden daha az etkilenir. RAIDing sabit diskleri bize geldi, ancak SSD'lerin daha güvenilir olmasını ve böylece paradan tasarruf etmesini umuyorduk. Belki de yanılmışız. Ve okullar çok zayıf bir bağlantıya sahipler, bu yüzden glusterf'ler dışarıda.
qris
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.