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

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

대부분의 Google 검색 결과는 Media_Wearout_Indicator라는 백분율 필드 또는 존재하지 않는 Longterm Data Endurance와 같은 다른 전문 지표에 대한 SMART 정보를 조회하도록 요구합니다. 계속해서 세 번째 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



답변

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

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

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

smartctl (8)의 말을 완전히 이해하고 가정하지 않는 것이 중요합니다. 불행히도 SMART 도구가 최신 SSD 및 해당 속성으로 항상 최신 상태 인 것은 아닙니다. 따라서 칩이 몇 번이나 기록되었는지 항상 알 수있는 방법은 없습니다. 최선의 방법은 “Power_On_Hours”(이 경우에는 “6568”)를보고 평균 디스크 사용률을 결정하고 평균을 구하는 것입니다.

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

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


답변

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/3

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


답변

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

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


답변

LSI RAID 카드 가 장착 된 서버를 사용하려면 7 개의 삼성 SSD가 설치되어 있습니다.

그것은 그런

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

컨트롤러 습격 뒤에 디스크의 정보를 얻을 수 트릭이다

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 카드를 가져오고 통과시키는 방법입니다.


답변