it-swarm-korea.com

SSD의 수명 또는 매체의 마모 수준을 확인하는 방법은 무엇입니까?

우리 모두는 SSD의 수명이 제한되어 있음을 알고 있습니다. Linux에서 SSD의 현재 상태를 어떻게 확인합니까?

대부분의 Google 검색 결과는 Media_Wearout_Indicator 또는 백분율 데이터 내구성과 같은 다른 전문 용어 지표에 대한 S.M.A.R.T. 정보를 찾을 것을 요구합니다. SSD에는 이러한 필드가 부족하므로 세 번째 SSD를 찾을 수는 있지만 필드가 표준화되지 않았다고 생각합니다.

문제를 설명하기 위해 여기 두 가지 예가 있습니다.


첫 번째 SSD에서는 어느 필드가 마모 수준을 나타내는 지 명확하지 않습니다. 그러나 RAW VALUE가 1에서 100 사이 인 Unknown_Attribute가 하나뿐이므로 우리가 찾고있는 것으로 가정 할 수 있습니다.

    $ Sudo smartctl -A /dev/sda                                             
    smartctl 6.2 2013-04-20 r3812 [x86_64-linux-3.11.0-14-generic] (local build)
    Copyright (C) 2002-13, Bruce Allen, Christian Franke, www.smartmontools.org

    === START OF READ SMART DATA SECTION ===                                 
    SMART Attributes Data Structure revision number: 1                       
    Vendor Specific SMART Attributes with Thresholds:                        
    ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
      5 Reallocated_Sector_Ct   0x0002   100   100   000    Old_age   Always       -       0
      9 Power_On_Hours          0x0002   100   100   000    Old_age   Always       -       6568
     12 Power_Cycle_Count       0x0002   100   100   000    Old_age   Always       -       1555
    171 Unknown_Attribute       0x0002   100   100   000    Old_age   Always       -       0
    172 Unknown_Attribute       0x0002   100   100   000    Old_age   Always       -       0
    173 Unknown_Attribute       0x0002   100   100   000    Old_age   Always       -       57
    174 Unknown_Attribute       0x0002   100   100   000    Old_age   Always       -       296
    187 Reported_Uncorrect      0x0002   100   100   000    Old_age   Always       -       0
    230 Unknown_SSD_Attribute   0x0002   100   100   000    Old_age   Always       -       190
    232 Available_Reservd_Space 0x0003   100   100   005    Pre-fail  Always       -       0
    234 Unknown_Attribute       0x0002   100   100   000    Old_age   Always       -       350
    241 Total_LBAs_Written      0x0002   100   100   000    Old_age   Always       -       742687258
    242 Total_LBAs_Read         0x0002   100   100   000    Old_age   Always       -       1240775277

이 SSD는 재기록 수명의 57 %를 사용했습니다. 맞습니까?


다른 디스크의 경우 SSD_Life_Left ATTRIBUTE가 두드러 지지만 0 % 남은 수명을 나타내는 원시 값 0은 위험에 처하지 않는 한 (건강한 날이 아니라면) 건강에 좋지 않은 SSD에는 적합하지 않습니다. "0 % 수명이 사용되었습니다"라고 표시되면 마모 된 하드 디스크에도 사용할 수 없습니다 (1 년 이상 사용됨).

    > Sudo /usr/sbin/smartctl -A /dev/sda
    smartctl 6.2 2013-07-26 r3841 [x86_64-linux-3.11.6-4-desktop] (SUSE RPM)
    Copyright (C) 2002-13, Bruce Allen, Christian Franke, www.smartmontools.org

    === START OF READ SMART DATA SECTION ===
    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   100   050    Pre-fail  Always       -       0/8415644
      5 Retired_Block_Count     0x0033   100   100   003    Pre-fail  Always       -       0
      9 Power_On_Hours_and_Msec 0x0032   100   100   000    Old_age   Always       -       4757h+02m+17.130s
     12 Power_Cycle_Count       0x0032   099   099   000    Old_age   Always       -       1371
    171 Program_Fail_Count      0x0032   000   000   000    Old_age   Always       -       0
    172 Erase_Fail_Count        0x0032   000   000   000    Old_age   Always       -       0
    174 Unexpect_Power_Loss_Ct  0x0030   000   000   000    Old_age   Offline      -       52
    177 Wear_Range_Delta        0x0000   000   000   000    Old_age   Offline      -       2
    181 Program_Fail_Count      0x0032   000   000   000    Old_age   Always       -       0
    182 Erase_Fail_Count        0x0032   000   000   000    Old_age   Always       -       0
    187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0
    194 Temperature_Celsius     0x0022   030   030   000    Old_age   Always       -       30 (Min/Max 30/30)
    195 ECC_Uncorr_Error_Count  0x001c   104   100   000    Old_age   Offline      -       0/8415644
    196 Reallocated_Event_Count 0x0033   100   100   000    Pre-fail  Always       -       0
    231 SSD_Life_Left           0x0013   100   100   010    Pre-fail  Always       -       0
    233 SandForce_Internal      0x0000   000   000   000    Old_age   Offline      -       3712
    234 SandForce_Internal      0x0032   000   000   000    Old_age   Always       -       1152
    241 Lifetime_Writes_GiB     0x0032   000   000   000    Old_age   Always       -       1152
    242 Lifetime_Reads_GiB      0x0032   000   000   000    Old_age   Always       -       3072
31
Tankman六四

첫 번째 예에서 내가 생각하는 것은 속성 233 인 Intel 드라이브의 "Media Wearout Indicator (미디어 마모 표시기)"입니다. 예, 범위는 0-100이며 100은 새롭고 사용되지 않은 드라이브입니다. 0이 완전히 마모되었습니다. 당신의 ouptut에 따르면,이 필드는 존재하지 않는 것 같습니다.

두 번째 예에서 SSD_Life_Left에 대한 공식 문서 해당 페이지 당을 읽으십시오.

이 속성의 RAW 값은 항상 0이며 의미가 없습니다. 대신 정규화 된 VALUE를 확인하십시오. 100에서 시작하여 남은 SDD 수명의 대략적인 백분율을 나타냅니다. 플래시 블록이 불량으로 표시되면 일반적으로 감소합니다. Retired_Block_Count의 RAW 값 참조

Smartctl (8)의 말을 완전히 이해하고 가정하지 않는 것이 중요합니다. 불행히도 S.M.A.R.T. 도구는 항상 최신 SSD와 그 속성으로 최신 상태를 유지하는 것은 아니므로 칩을 몇 번이나 작성했는지 항상 알 수있는 방법은 없습니다 할 수있는 최선의 방법은 "Power_On_Hours"(이 경우에는 "6568")를보고 평균 디스크 사용률을 결정하고 평균을 구하는 것입니다.

드라이브 사양을 조회하고 칩을 만드는 데 사용되는 프로세스를 결정할 수 있어야합니다. 32nm 프로세스 칩은 24nm 프로세스 칩보다 쓰기 내구성이 더 길다. 그러나 "평균"인 경우 최소 1,000에서 최대 6,000 개의 쓰기로 약 3,000 ~ 4,000 개의 쓰기를 예상 할 수 있습니다. 따라서 64GB SSD를 사용하는 경우웨어 레벨링을 가정 할 때 SSD에 총 192TB ~ 256TB의 쓰기가 예상됩니다.

예를 들어, 드라이브에 11KBps의 사용률을 유지하는 경우 시간당 약 40MB의 쓰기가 예상 될 수 있습니다. 6568의 전원이 켜진 시간에 약 260GB의 디스크에 기록했습니다. 고장이 발생하기 전에 칩을 닳아서 고장이 발생하기 약 600 년 전에 약 200 TB 총 쓰기 수의 약 200 %를 유지할 수 있음을 알면 커패시터가 마모되어 디스크가 고장날 수 있습니다. 전압 규정.

19
Aaron Toponce

Samsung SSD의 경우 SMART 속성 177 (웨어 레벨링 수))를 확인하십시오.

ID # 177 마모 레벨링 카운트

이 속성은 미디어 프로그램 및 지우기 작업 수 (블록이 지워진 횟수)를 나타냅니다. 이 값은 SSD의 수명과 직접 관련이 있습니다. 이 속성의 원시 값은 총 P/E주기 수를 나타냅니다.

출처 : http://www.samsung.com/global/business/semiconductor/minisite/SSD/M2M/download/07_Communicating_With_Your_SSD.pdf

마모 수준 표시기는 100에서 시작하여 내가 알 수있는 것에서 1로 줄어 듭니다. 1에서 드라이브는 모든 정격 p/e 사이클을 초과했지만 실제로 드라이브의 전체 내구성은 해당 값을 크게 초과 할 수 있습니다.

출처 : http://www.anandtech.com/show/7173/samsung-ssd-840-evo-review-120gb-250gb-500gb-750gb-1tb-models-tested/

소금 한 알로 그 값을 초과하는 것에 대한 마지막 진술을 제안합니다.

16
Diaa Sami

인텔 브랜드 SSD가없는 경우주의하십시오! 나는 삼성 SSD를 가지고 있으며 smartmontools/smartctl의 잘못된 속성 레이블링으로 완전히 오해되었습니다. 인텔 이외의 다른 것이 있다면 https://askubuntu.com/a/460463/65722 에서 도움이되는 (내가 아닌) 고통에 대한 나의 이야기를 찾을 수 있습니다.

정보 품질 대 소요 시간 발굴 비율이 내 것보다 낫기를 바랍니다!

4
Matt S.

LSI raid card의 서버를 사용하는 경우 7 개의 삼성 SSD가 설치되어 있습니다.

그것은 그런

  • / dev/sda는 Raid Controller에 의해 JBOD로 표시된 운영 체제 SSD입니다.
  • 다른 7 SSD는 RAID 0 (또는 RAID-?)이므로/dev/sdb로만 표시됩니다.

rAID 컨트롤러 뒤에있는 디스크 정보를 얻으려면 트릭은

smartctl --scan

{output is}
/dev/sda -d scsi # /dev/sda, SCSI device
/dev/sdb -d scsi # /dev/sdb, SCSI device
/dev/bus/0 -d megaraid,8 # /dev/bus/0 [megaraid_disk_08], SCSI device
/dev/bus/0 -d megaraid,9 # /dev/bus/0 [megaraid_disk_09], SCSI device
/dev/bus/0 -d megaraid,10 # /dev/bus/0 [megaraid_disk_10], SCSI device
/dev/bus/0 -d megaraid,11 # /dev/bus/0 [megaraid_disk_11], SCSI device
/dev/bus/0 -d megaraid,12 # /dev/bus/0 [megaraid_disk_12], SCSI device
/dev/bus/0 -d megaraid,13 # /dev/bus/0 [megaraid_disk_13], SCSI device
/dev/bus/0 -d megaraid,14 # /dev/bus/0 [megaraid_disk_14], SCSI device
/dev/bus/0 -d megaraid,15 # /dev/bus/0 [megaraid_disk_15], SCSI device

다음과 같은 smartctl 정보를 얻으려면

  • WEAR_LEVELING_COUNT
  • POWER_ON_HOURS
  • TEMPERATURE_CELCIUS 그리고 다른 좋은 것들

각 디스크마다

smartctl -d megaraid,8 -all /dev/bus/0
smartctl -d megaraid,9 -all /dev/bus/0
smartctl -d megaraid,10 -all /dev/bus/0
{down to}
smartctl -d megaraid,15 -all /dev/bus/0

smartctl 의 구문은 smartctl [options] <device>

여러 디스크가/dev/sdb,/dev/sdc,/dev/sdd 등과 같은 여러 장치로 표시되지 않을 때 RAID 카드를 가져오고 통과하는 방법입니다.

0
ron