이 SSD 드라이브가 불량 섹터에서 실패하는 이유는 무엇입니까?


15

참고 :이 질문은 이전에 주제를 벗어난 것으로 마감되었습니다. 토론을 읽을 수 있습니다 . 여기에 묻는 나의 이유는 다음과 같습니다.

  • 이 드라이브는 잠비아 시골의 학교를위한 오프라인 콘텐츠 캐시 서버에 있습니다.
  • 서버는 디스크 이미지로 작성되며 모든 컨텐츠를 교체 할 수 있습니다.
  • 잠비아의 학교는 예산이 제한되어 있고 많은 학교가 있기 때문에 저렴해야합니다.
  • 또한 나쁜 길에서 갈아 타려면 8 시간이 걸리기 때문에 신뢰성이 있어야합니다.
  • 여기에 어떤 드라이브가 "초 저속 쓰레기"가 아닌지 물어볼 수는 없습니다.
  • 우리는 이러한 기준을 충족시키는 드라이브에 대한 자체 연구 및 실험을 수행하고 있습니다.
  • 불량 섹터를 덮어 써서 (자동 재 할당) 불량 섹터를 복구 할 수없는 것은 내 가정을 무시하고 그 이유를 알고 싶었습니다.
  • 보안 지우기가 불량 섹터를 해결할 수 있다고 생각했지만 드라이브를 폐기하기 전에 다른 사람들의 의견을 원했습니다.
  • SMART 데이터에서 실패를 예측할 수있는 내용이 누락되었을 수 있다고 생각했습니다.

이것은 Kingston 240GB SSD 디스크로 약 3 개월 동안 현장에서 정상적으로 작동했으며 갑자기 불량 섹터를 개발했습니다.

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.

이제 디스크의 특정 위치에 불량 블록이 있습니다.

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.

반복 가능한 것처럼 보이고 자동 재 할당이 실패하므로 다음과 같이 작성하여 수정할 수 없습니다.

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.

그리고 시스템 로그에 다음과 같은 오류가 발생합니다.

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

이제이 디스크에서 자동 재 할당이 실패하는 이유를 이해하지 못합니다. smartctl출력은 모두 나에게 벌금을 보인다. 16 개 섹터 만 재 할당되었는데, 그다지 많지는 않습니다. 이 드라이브가 섹터 재 할당을 거부하는 합법적 인 이유를 알 수 없습니다. 이 SSD 모델이 고장 났거나 잘못 설계 되었습니까?

노트:

  • Kingston의 문서에 따르면 속성 174는 "예기치 않은 전력 손실"입니다.
  • 131 예기치 않은 전력 손실이 상당히 나쁩니다.
  • 속성 187 (Reported_Uncorrect)은 가능한 최대 65535 중에서 49900입니다.
  • 최고 온도는 78 ℃에서 꽤 높습니다

가장 흥미로운 SMART 카운터 는이 드라이브에 Kingston에 의해 숨겨져 있습니다. 그러나 속성 196에서 예비 섹터 수를 추정 할 수 있습니다. Reallocated_Event_Count. 정규화 된 값에 대해 다음 공식이 있습니다.

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

정규화 된 값이 100이므로 이는 RBC << MRE임을 의미하므로 재 할당 할 수있는 모든 섹터를 소진 할 수 없습니다.


3
SMART 데이터는 중대한 문제를 나타내지 않습니다. 하드웨어 문제의 다른 가능성을 제거하기 위해 다른 케이블 로 다른 컨트롤러 에서이 디스크를 테스트 했습니까 ?
Michael Hampton

1
일부 섹터는 반복적으로 잘 읽히고 다른 섹터는 반복적으로 오류 때문에 다른 컨트롤러 / 케이블을 아직 시도하지 않았습니다. 컨트롤러 또는 케이블이 아닌 드라이브에 오류가 있음을 추론하고 있습니다.
qris

1
컨트롤러 나 케이블이 불량한 경우에도 똑같은 일이 발생할 수 있기 때문에 추론이 잘못되었습니다 (케이블은 좀 더 이상하지 않지만 어쨌든 시도해 볼 가치가 있습니다).
gparent

3
@gparent 공제가 반드시 잘못된 것은 아닙니다. 결론을 도출 한 논리. 운전은 범인일지도 모르지만 그의 생각의 근거는 거의 근거가 없습니다. 어쨌든, 그는 제안 된대로 다른 컨트롤러 / 케이블을 테스트해야합니다.
Chris S

네, 제가 방금 말한 것 같아요. 귀하의 의견에 완전히 동의하기 때문에 언어 장벽의 일부로 차이점을 안전하게 고려할 수 있다고 생각합니다.
gparent

답변:


2

저렴한 SSD는 심각한 품질 문제가있는 것 같습니다. 특정 드라이브에 문제가있는 많은 사용자를 찾을 수 있습니다. 그러나 벤더는 동일한 레이블로 다른 드라이브 (예 : 다른 NAND 칩 / 컨트롤러)도 판매한다고 생각합니다. 따라서 각 드라이브는 다르게 작동 할 수 있습니다.

SMART 값은 드라이브가 곧 고장날 것임을 나타내지 않습니다. 내 경험상 동일합니다. 갑자기 드라이브 오류가 발생하고 디스크가 고장납니다.

SSD를 사용하는 이유는 무엇입니까? 기계 부품이없고 방진 및 발열량이 적기 때문에 SSD의 장점을 봅니다. 그러나 나는 또한 많은 단점을 봅니다.

예를 들어 저널링 기능이있는 파일 시스템을 사용하는 경우 사용량이 많은 볼륨에서도웨어 레벨링을 사용해도 단일 메모리 셀에 대한 쓰기 횟수가 빠르게 도달 할 수 있습니다.

또한 전자 장치는 기존 하드 드라이브와 마찬가지로 습도가 높거나 고온의 영향을받습니다.

대체로 싼 기존 하드 드라이브를 사용하지 않고 (공격이 필요하지 않은 경우) 교체 용으로 필요할 때까지 (서버 케이스에 이미 존재하거나 핫 스왑 케이지에 장착 될 때까지 연결되지 않은 예비 드라이브)를 서버에 제공하십시오. 디스크는 다른 서버에서 사용될 수 있습니다). 그런 다음 현장의 스크립트 나 원격에서 (가능한 경우) 준비 할 수 있습니다.

기존의 하드 드라이브에 전원이 공급되지 않는 한 대상으로의 전송은 거칠 수 있습니다 ...

여러 개의 학교 서버 / 영구 클라이언트와 안정적인 / 중복 네트워크가있는 경우 분산 파일 시스템이 고장 안전 캐시 서버를 만드는 데 도움이 될 수 있습니다 (예 : glusterfs 사용).


고마워 Brian, 나는 더 좋은 사람이 없기 때문에이 대답을 받아들이고 있습니다. 하드 디스크에 대한 나의 경험은 섹터를 재 할당 할 수있어 복구가 가능하다는 것입니다. SSD를 사용하는 이유에 대해 맞습니다. 방진은 잠비아에게 큰 문제입니다. 드라이브는 자주 쓰지 않으며 대부분의 내용은 정적입니다. 솔리드 스테이트 전자 장치는 방청 녹보다 열과 습도의 영향을 덜받습니다. RAIDing 하드 디스크가 우리에게 일어 났지만 SSD의 안정성과 비용 절감을 기대했습니다. 아마도 우리는 틀렸을 것입니다. 그리고 학교는 연결성이 매우 낮아서 glusterfs가 없습니다.
qris
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.