web-dev-qa-db-ja.com

SSDに残っている寿命またはメディアの摩耗レベルを確認するにはどうすればよいですか?

SSDにはあらかじめ決められた寿命が限られていることは誰もが知っています。 LinuxでSSDの現在のヘルスステータスを確認するにはどうすればよいですか?

ほとんどのGoogle検索結果では、Media_Wearout_Indicatorと呼ばれるパーセンテージフィールドのS.M.A.R.T.情報、またはLongterm Data Enduranceなどの他の専門用語のインジケーター(存在しない)を検索するように求められます。田畑。さらに3つ目のSSDを探すこともできましたが、フィールドが標準化されていないように感じます。

ここで問題を示すために2つの例を示します。


最初のSSDでは、どのフィールドが摩耗レベルを示しているのか明確ではありません。ただし、RAW値が1〜100のUnknown_Attributeは1つしかありません。したがって、これが探しているものであるとしか想定できません。

    $ 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%であることを示すRaw値0は、SSDが危険にさらされない限り(数日後に表示されます)、明らかに正常な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六四

最初の例では、あなたが言及していると思うのは、Intelドライブの「メディアウェアアウトインジケーター」で、これは属性233です。はい、範囲は0〜100で、100は新品の未使用ドライブ、完全にすり減っています。あなたの出力によれば、このフィールドは存在しないようです。

2番目の例では、SSD_Life_Leftに関する 公式ドキュメントを読んでください。 そのページごとに:

この属性のRAW値は常に0であり、意味はありません。代わりに、正規化されたVALUEを確認してください。これは100から始まり、SDD寿命のおよそのパーセンテージを示しています。通常、Flashブロックが不良としてマークされると減少します。Retired_Block_CountのRAW値を参照してください

Smartctl(8)が何を言っているかを十分に理解し、仮定を行わないことが非常に重要です。残念ながら、S.M.A.R.T.ツールは、最新のSSDとその属性で常に最新であるとは限りません。そのため、チップが書き​​込まれた回数を常に明確に知る方法はありません。あなたができる最善のことは、あなたのケースでは「6568」である「Power_On_Hours」を見て、平均ディスク使用率を決定し、それを平均することです。

ドライブの仕様を調べて、チップの製造に使用されたプロセスを特定できるはずです。 32nmプロセスチップは、24nmプロセスチップよりも書き込み耐久性が長くなります。ただし、「平均して」、おそらく3,000から4,000の書き込みが予想され、最低1,000から最高6,000の書き込みが予想されます。したがって、64 GB SSDを使用している場合は、ウェアレベリングを想定して、SSDに書き込まれる合計が192 TBから256 TBの近くのどこかを想定する必要があります。

例として、ドライブの使用率がたとえば11 KBpsを維持している場合、1時間あたり約40 MBが書き込まれることが予想されます。電源投入後6568時間で、ディスクに約260 GBを書き込んだことになります。約200 TB合計書き込みの持続可能性があることを知っていると、失敗する前に、チップの摩耗が原因で失敗するまでに約600年かかります。ディスクはコンデンサの摩耗または電圧調整。

19
Aaron Toponce

Samsung SSDの場合、SMART attribute 177(Wear Leveling Count))を確認します。

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

IntelブランドのSSDをお持ちでない場合:注意してください!! Samsung SSDを使用していますが、smartmontools/smartctlによる誤った属性ラベル付けに完全に惑わされました。 Intel以外のものをお持ちの場合 https://askubuntu.com/a/460463/65722 で私の(不気味な)痛みの話が役立つかもしれません。

情報品質と時間の浪費の比率が私のものより優れているかもしれません!

4
Matt S.

LSI RAIDカードのサーバーを使用している場合、7台のSamsung 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